2011-12-15 72 views
0

我想添加到文本字段到對話框,但它似乎並沒有工作......這是我的代碼。任何人都可以修復我的代碼或給我一些關於如何將兩個文本字段添加到對話框的指導?Android - 如何將兩個文本字段添加到對話框

謝謝。

  final EditText input1 = new EditText(this); 
     input1.setText("note"); 
     input1.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
      @Override 
      public void onFocusChange(View v, boolean hasFocus) { 
       input1.setText(""); 
      } 
     }); 
     final EditText input2 = new EditText(this); 
     input2.setMinLines(1); 
     input2.setText("0.0"); 
     input2.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
      @Override 
      public void onFocusChange(View v, boolean hasFocus) { 
       input2.setText(""); 
      } 
     }); 
     LinearLayout layout = new LinearLayout(this); 
     layout.setOrientation(1); 
     layout.addView(input1); 
     layout.addView(input2); 


     return new AlertDialog.Builder(this). 
     // code for showing Ok and Cancel button 
     .setView(layout).create(); 

回答

3

我個人使用一個新的活動,當我需要的不僅僅是對話的幾個字。如果添加

<activity android:theme="@android:style/Theme.Dialog"> 
</activity> 

它會顯示爲一個對話框,允許您使用多個TextViews,按鈕,ImageViews,紗廠等

編輯

它添加到您androidmanifest文件你想成爲一個對話框ativity,這樣

<activity android:name=".About" android:label="@string/app_name" 
     android:theme="@android:style/Theme.Dialog"> 
     <intent-filter> 
      <action android:name="com.example.ABOUT" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 
+0

+1我認爲這不是定製警報對話框的最佳方式。 – 2011-12-15 06:14:51

+0

我很抱歉,我是一名初學者到android編程。我應該在哪裏創建該XML?在res /佈局下? – user826323 2011-12-15 06:22:58

0

嘗試添加這樣

final AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 
    Context c = getBaseContext(); 
    // Create the text field in the alert dialog... 
    text = new EditText(this); 
    text.setSingleLine();  

    // Add text to dialog 
    alertDialog.setView(text); 
    alertDialog.setTitle("Alert"); 
     alertDialog.setMessage("error"); 
     alertDialog.setButton("OK", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) {          

      } 
     });   
     alertDialog.show();   
    } 
5

創建XML佈局文件

dialog_layout.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" android:layout_height="fill_parent" 
    android:gravity="center_horizontal" android:background="#ffffff" 
    android:orientation="vertical" android:padding="10dp"> 
    <EditText android:id="@+id/text1" android:layout_width="fill_parent" 
     android:layout_height="wrap_content"/> 
    <EditText android:id="@+id/text2" android:layout_width="fill_parent" 
     android:layout_height="wrap_content" /> 
</LinearLayout> 

你的對話框代碼

final AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 
View dialog_layout = getLayoutInflater().inflate(R.layout.dialog_layout, null); 
// Create the text field in the alert dialog... 
EditText text1 = (EditText) dialog_layout.findViewById(R.id.text1); 
EditText text2 = (EditText) dialog_layout.findViewById(R.id.text2);   

alertDialog.setView(dialog_layout); 
alertDialog.show(); 

您可以在佈局按照您的要求添加更多的控制

相關問題