欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android中Dialog对话框学习

程序员文章站 2022-03-09 22:55:51
...

记录Android中Dialog对话框学习

setView
设置一个自定义的View放置到message的下方,可以是一个View对象,也可以是一个view资源ID。 如:

builder.setView(new EditText(this));

这是插入一个setView的情况,那插入多个时如何?

如下:
Android中Dialog对话框学习
MainActivity.java

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button bn = findViewById(R.id.bn01);//对应xml中button的id
        final AlertDialog.Builder builder =new AlertDialog.Builder(this);
        bn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                
                builder.setTitle("普通对话框");//设置对话框标题
                
                final EditText editText1=new EditText(MainActivity.this);
                editText1.setText("账号");//设置可编辑文本框
                
                
                final EditText editText2=new EditText(MainActivity.this);
                editText2.setText("密码:");//设置可编辑文本框
                
                
                final EditText editText3=new EditText(MainActivity.this);
                editText3.setText("电话号码:");//设置可编辑文本框
                
                
                LinearLayout layout=new LinearLayout(MainActivity.this);//线性布局
                layout.setOrientation(LinearLayout.VERTICAL);//设置垂直方向
                layout.addView(editText1);
                layout.addView(editText2);
                layout.addView(editText3);
                builder.setView(layout);
                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        if (TextUtils.isEmpty(editText1.getText())&&TextUtils.isEmpty(editText2.getText())&&TextUtils.isEmpty(editText3.getText())){
                            Toast.makeText(MainActivity.this,"您输入的内容为空",Toast.LENGTH_SHORT).show();
                        }else {
                        }
                    }}
                    );
                builder.setNegativeButton("取消", null);
                builder.show();
            }
        });
    }
}

activity_main.xml

 <Button
        android:id="@+id/bn01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/mes" />

strings.xml

<resources>
    <string name="app_name">DialogApp</string>
    <string name="mes">显示登录对话框</string>
</resources>

自带的方法可能不太完美,后续继续学习用户自定义Dialog结合xml

相关标签: android