Android中Dialog实现自定义弹出对话框

来源:互联网 发布:阿里云服务器好用吗 编辑:程序博客网 时间:2024/05/18 01:23


Activity_main.xml中添加如下代码

<TextView android:text="你输入的用户名:" android:layout_width="wrap_content"    android:layout_height="wrap_content"      android:id="@+id/tvUserName" />  <TextView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="你输入的用密码:"    android:id="@+id/tvPassword" />  <Button    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="自定义对话框"    android:id="@+id/btnCustomDialog"    android:layout_below="@+id/textView2"/>

 

新建对话框资源文件login_custom_dialog_layout.xml

<?xml version="1.0" encoding="utf-8"?>  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent" android:layout_height="match_parent">      <LinearLayout        android:orientation="horizontal"        android:layout_width="wrap_content"        android:layout_height="wrap_content">          <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="用户:" />          <EditText            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:id="@+id/etUserName"            android:hint="请输入用户" />      </LinearLayout>      <LinearLayout        android:orientation="horizontal"        android:layout_width="match_parent"        android:layout_height="wrap_content">          <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="密码" />          <EditText            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:id="@+id/etPassword"            android:layout_gravity="right"            android:hint="请输入密码" />    </LinearLayout>      <LinearLayout        android:orientation="horizontal"        android:layout_width="match_parent"        android:layout_height="wrap_content">          <Button            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="确定"            android:id="@+id/btnCommit"            android:layout_weight="1" />          <Button            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="取消"            android:id="@+id/btnCancel"            android:layout_weight="1" />    </LinearLayout>  </LinearLayout>

 

MainActivity.java代码
public class MainActivity extends AppCompatActivity {    private Button btnCustomDialog;    private TextView tvUserName,tvPassword;      @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);          tvUserName= (TextView) findViewById(R.id.tvUserName);        tvPassword= (TextView) findViewById(R.id.tvPassword);          btnCustomDialog= (Button) findViewById(R.id.btnCustomDialog);        btnCustomDialog.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                final Dialog dialog =new Dialog(MainActivity.this);                dialog.setTitle("登录");                dialog.setContentView(R.layout.login_custom_dialog_layout);                dialog.show();                final EditText etUserName= (EditText) dialog.findViewById(R.id.etUserName);                final EditText etPassword= (EditText) dialog.findViewById(R.id.etPassword);                Button btnCommit= (Button) dialog.findViewById(R.id.btnCommit);                Button btnCancel= (Button) dialog.findViewById(R.id.btnCancel);                btnCommit.setOnClickListener(new View.OnClickListener() {                    @Override                    public void onClick(View v) {                        tvUserName.setText("你输入的用户名:"+etUserName.getText().toString());                        tvPassword.setText("你输入的用密码:"+etPassword.getText().toString());                        dialog.dismiss();                    }                });                btnCancel.setOnClickListener(new View.OnClickListener() {                    @Override                    public void onClick(View v) {                        dialog.cancel();                    }                });              }        });      }}
 
0 0
原创粉丝点击