所以我有这个代码。我想要做的是当我按下带有ID帮助的按钮时(例如R.id.help)我希望在对话框中显示自定义文本。这段代码似乎有效,除了出现对话框然后立即消失......有什么问题?
以下是代码:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.icon:
Intent intent = new Intent(this, Main.class);
startActivity(intent);
case R.id.help:
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
alertbox.setMessage("This is the alertbox!");
alertbox.setNeutralButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
// the button was clicked
}
});
// show it
alertbox.show();
}
return true;
}
}
答案 0 :(得分:0)
尝试返回true而不是false。见the doc
答案 1 :(得分:0)
我找到了解决方案:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.icon:
Intent intent = new Intent(this, Main.class);
startActivity(intent);
return true;
case R.id.help:
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
alertbox.setMessage("Tai yra dėžutė, kurioje bus aprašymas \n\n text text text text!");
alertbox.setNeutralButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
}
});
// show it
alertbox.show();
}
return true;
}
}