android - 在android中的对话框中设置多个文本框

标签 android android-layout

我正在创建一个类似于登录屏幕的对话框,其中包含两个文本框和两个按钮。我能够创建它,但我的问题是两个编辑文本框相互重叠(第二个编辑文本框与第一个编辑文本框重叠)。这可能是一个简单的问题,但由于我是 android 的新手,所以我坚持使用它。请帮助我解决它。这是源代码

public class LoginActivity extends Activity {
    /** Called when the activity is first created. */
    @Override

    public void onCreate(Bundle savedInstanceState) {                        
        super.onCreate(savedInstanceState);                         
        setContentView(R.layout.main);  
        Button btn= (Button) findViewById(R.id.btn_Login);
        btn.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                showDialog(0);

            }
        });
    }

        protected Dialog onCreateDialog(int id)
        {
        final AlertDialog.Builder alert = new AlertDialog.Builder(this);                        
        final EditText input = new EditText(this); 
        final EditText input1 = new EditText(this);
        alert.setIcon(R.drawable.icon);
        alert.setTitle("Login");
        alert.setView(input);   
        alert.setView(input1);

        alert.setView(input1);
        alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {             
            public void onClick(DialogInterface dialog, int whichButton) {              
                String value = input.getText().toString().trim();                       
                Toast.makeText(getApplicationContext(), value, Toast.LENGTH_SHORT).show();   
                }                     });                 
        alert.setNegativeButton("Cancel",                  
                new DialogInterface.OnClickListener() {                           
            public void onClick(DialogInterface dialog, int whichButton) {          
                dialog.cancel();    }     });         
        return alert.create();      
        } 
    }

最佳答案

如果您尝试使用 LinerLayout 会怎样:

LinearLayout lila1= new LinearLayout(this);
lila1.setOrientation(LinearLayout.VERTICAL);
final EditText input = new EditText(this); 
final EditText input1 = new EditText(this);
lila1.addView(input);
lila1.addView(input1);
alert.setView(lila1);

像这样:

public class LoginActivity extends Activity {
    /** Called when the activity is first created. */
    @Override

public void onCreate(Bundle savedInstanceState) {                        
    super.onCreate(savedInstanceState);                         
    setContentView(R.layout.main);  
    Button btn= (Button) findViewById(R.id.btn_Login);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            showDialog(0);

        }
    });
}

    protected Dialog onCreateDialog(int id)
    {
    final AlertDialog.Builder alert = new AlertDialog.Builder(this);    

    LinearLayout lila1= new LinearLayout(this);
    lila1.setOrientation(1); //1 is for vertical orientation
    final EditText input = new EditText(this); 
    final EditText input1 = new EditText(this);
    lila1.addView(input);
    lila1.addView(input1);
    alert.setView(lila1);

        alert.setIcon(R.drawable.icon);
        alert.setTitle("Login");

        alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {             
            public void onClick(DialogInterface dialog, int whichButton) {              
                String value = input.getText().toString().trim();                       
                Toast.makeText(getApplicationContext(), value, Toast.LENGTH_SHORT).show();   
                }                     });                 
        alert.setNegativeButton("Cancel",                  
                new DialogInterface.OnClickListener() {                           
            public void onClick(DialogInterface dialog, int whichButton) {          
                dialog.cancel();    }     });         
        return alert.create();      
        } 
    }

它完美地工作:我邀请你复制粘贴它:)。

关于android - 在android中的对话框中设置多个文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7334292/

相关文章:

android - 如何从 Android 应用程序打开 Viber 公共(public)聊天

android - 调用 findViewById() 获取 fragment View 时出现 NullPointerException

java - 有没有办法在Android上并行创建 View ?

java - 将异常抛出回调用方法

Android的clipToPadding属性有什么作用?

android - 当字体很大时,为什么 ListView 中的相对布局无法随内容正确扩展

android - Action 条不消失

android - 使用嵌套 ScrollView 问题的响应式设计

java - 如何使用retrofit2查找 map 中的标记?

android - 使用 Appium 自动化混合应用程序