我的活动在AlertDialog显示时重置。
我正在学习Android并遵循此tutorial.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Other Code
submitBtn = (Button) findViewById(R.id.submit_button);
// Other Code
submitBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
AlertDialog alert = builder.create();
alert.setMessage("Hello " + name);
alert.setTitle("Showing content in prompt window");
alert.show();
setContentView(R.layout.activity_main);
}
这是我的AlertDialogCode:
//creating the alert dialog
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setCancelable(true)
.setNegativeButton("Close", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
//Action for close button
dialog.cancel();
}
});
一旦显示AlertDialog,活动就会重置 你能帮忙说出活动重置的原因吗?
答案 0 :(得分:2)
您正在重置具有相同布局的活动的XML视图,以便
删除setContentView(R.layout.activity_main);
public void onClick(View v){
AlertDialog alert = builder.create();
alert.setMessage("Hello " + name);
alert.setTitle("Showing content in prompt window");
alert.show();
//setContentView(R.layout.activity_main);
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^ remove
}
答案 1 :(得分:2)
评论或删除该行
setContentView(R.layout.activity_main);
在你第一个代码上。因为这会强制您的活动重新加载。
答案 2 :(得分:1)
当您调用df.groupby(['x1','x2']).ngroups
Out[1267]: 4
方法时,您只需设置一次内容视图。在您的代码中,您已在第二行设置了onCreate
。如果您碰巧再次设置它,它将重置您的活动并删除您的事件处理程序。
因此建议您删除第二个setContentView。这也是您正在学习的教程中的问题。
setContentView