2013-05-15 6 views

답변

1

당신은 AlertDialog.Builder

AlertDialog.Builder alert = new AlertDialog.Builder(this); 

alert.setTitle("Title"); 
alert.setMessage("Message"); 

// Set an EditText view to get user input 
final EditText input = new EditText(this); 
alert.setView(input); 

alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
public void onClick(DialogInterface dialog, int whichButton) { 
    String value = input.getText(); 
    // Do something with value! 
    } 
}); 

alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
    // Canceled. 
    } 
}); 

alert.show(); 
+0

나는 또한 이것을 발견했으나 그것을 Activity에 통합하는 방법을 모른다. – DrDree

+0

은 ** this ** 현재 활동입니까? – DrDree

+0

활동 내에 추가 할 수 있습니다. 클릭 할 때이 대화 상자를 사용자에게 표시하려면 onclick 이벤트에 추가하십시오. –

0

시도 EditText 등을 포함하는 활동 매니페스트에

android:theme="@android:style/Theme.Dialog"

를 추가 setContentView 전에 requestWindowFeature(Window.FEATURE_NO_TITLE)를 호출해야합니다 확인했습니다 .

경고 대화 상자에 활동이 표시되어야합니다.

희망이 도움이됩니다.

0
activity_login.xml // place inside layout folder 


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

<Button 
    android:id="@+id/btnDialog" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:text="clickme" 
    android:textColor="#fff" 
    android:textStyle="bold" > 
    </Button> 

    </RelativeLayout> 



    dialog_box.xml /// layout for dialog,Place it inside drawable folder 

    <?xml version="1.0" encoding="utf-8"?> 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:background="#fff" > 

    <LinearLayout 
    android:id="@+id/linearlayout" 
    android:layout_width="fill_parent" 
    android:layout_height="40dip" 
    android:gravity="center" > 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="DialogBox" 
     android:textColor="#000" 
     android:textSize="14sp" 
     android:textStyle="bold" /> 
    </LinearLayout> 

    <TextView 
    android:id="@+id/txtview" 
    android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
    android:layout_below="@id/linearlayout" 
    android:layout_marginBottom="3dp" 
     android:layout_marginLeft="15dp" 
    android:layout_marginTop="3dp" 
    android:text="Enter E-mail Address" 
    android:textColor="#000000" 
    android:textSize="14sp" 
    android:textStyle="bold" /> 

    <EditText 
    android:id="@+id/edtFEmail" 
    android:layout_width="fill_parent" 
    android:layout_height="40dip" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@id/txtview" 
    android:layout_marginLeft="15dp" 
    android:layout_marginRight="15dp" 
    android:layout_marginTop="3dp" 
    android:gravity="center" 
    android:hint="E-mail" 
    android:inputType="textEmailAddress" > 
    </EditText> 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@id/edtFEmail" 
    android:layout_marginLeft="40dp" 
    android:layout_marginRight="40dp" 
    android:weightSum="4" > 

    <Button 
     android:id="@+id/btnSaveDialog" 
     android:layout_width="0dp" 
     android:layout_height="40dp" 
     android:layout_marginBottom="2dp" 
     android:layout_marginLeft="2dp" 
     android:layout_marginRight="3dp" 
     android:layout_weight="2" 
     android:text="Submit" 
     android:textColor="#000" 
     android:textSize="16dip" /> 

    <Button 
     android:id="@+id/btnCancelDialog" 
     android:layout_width="0dp" 
     android:layout_height="40dp" 
     android:layout_marginBottom="2dp" 
     android:layout_marginLeft="3dp" 
     android:layout_marginRight="2dp" 
     android:layout_weight="2" 
     android:text="Cancel" 
     android:textColor="#000" 
     android:textSize="16dip" /> 
     </LinearLayout> 

     </RelativeLayout> 





LoginActivity .java 

public class LoginActivity extends Activity { 

Context ctx; 

EditText edtFEmailDialog; 

Button btnShowDialog, btnCancelDialog, btnSaveDialog; 

Dialog dialog; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_login); 

    ctx = this; 

    init(); 

    btnSaveDialog.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      String sfemail = edtFEmailDialog.getText().toString(); 
      if (edtFEmailDialog.getText().toString().equals("") 
        || edtFEmailDialog.getText().toString().equals("null")) { 
            edtFEmailDialog.requestFocus(); 
       edtFEmailDialog.setError("Please Enter E-mail Address"); 
       return; 
      } 

      Toast.makeText(ctx, edtFEmailDialog.getText().toString(), 1000) 
        .show(); 

     } 
    }); 

    btnCancelDialog.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      edtFEmailDialog.setText(""); 
      dialog.dismiss(); 
     } 
    }); 

    btnShowDialog.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      dialog.show(); 
     } 
    }); 
} 

public void init() { 

    dialog = new Dialog(LoginActivity.this); 
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    dialog.setContentView(R.layout.dialog_box); 

    dialog.setCancelable(true); 

    btnShowDialog = (Button) dialog.findViewById(R.id.btnDialog); 

    btnCancelDialog = (Button) dialog.findViewById(R.id.btnCancelDialog); 
    btnSaveDialog = (Button) dialog.findViewById(R.id.btnSaveDialog); 
    edtFEmailDialog = (EditText) dialog.findViewById(R.id.edtFEmail); 

} 


    } 
    cheers guys 
관련 문제