android之实现选择对话框

实现效果:

主页面                                  点击后选择对话框                    选择后效果

           

实现代码:

public class MainActivity extends AppCompatActivity {
private Button bt;
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt=(Button)findViewById(R.id.button);
tv=(TextView)findViewById(R.id.text);
bt.setOnClickListener(new myOnClickListener());
}
private class myOnClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
//创建对话框
AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
//定义对话框内容
builder.setTitle(R.string.app_title);
//选择点击对话框内的内容时的监听事件
builder.setItems(R.array.select, new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
//定义子对话框内容
CharSequence strDialogBody=getString(R.string.app_stitle);
String [] aryShop=getResources().getStringArray(R.array.select);
//创建子对话框以及内容
AlertDialog.Builder new_builder=new AlertDialog.Builder(MainActivity.this);
new_builder.setMessage(strDialogBody+aryShop[which]);
//子对话框的点击事件
new_builder.setNeutralButton(R.string.str_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {

}
}).show();
}
});
//定义父对话框中的点击事件
builder.setNegativeButton(R.string.str_cancel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//销毁父对话框对象,回到主页
dialog.dismiss();
}
}).show();
}
}


}
原文地址:https://www.cnblogs.com/xy95/p/5861712.html