我正在尝试创建一个带有单选项列表(单选按钮)的警报对话框。当用户单击两个选项菜单之一时,将调用此对话框。
不幸的是,我无法使此代码工作。当我点击第一个选项菜单(设置)时,什么也没有出现。但是当我点击第二个选项菜单时,Toast消息会正常显示。如果有人能指出明显错误,我将不胜感激。
以下是警报对话框和选项菜单的代码清单:
非常感谢您的时间和帮助!
不幸的是,我无法使此代码工作。当我点击第一个选项菜单(设置)时,什么也没有出现。但是当我点击第二个选项菜单时,Toast消息会正常显示。如果有人能指出明显错误,我将不胜感激。
以下是警报对话框和选项菜单的代码清单:
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.ProgressDialog;
import android.content.DialogInterface;
ProgressDialog msgInitGPS = null;
final CharSequence[] items = {"m/s", "km/h", "mph"};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.settings: AlertDialog.Builder UnitSelection = new AlertDialog.Builder(this);
UnitSelection.setTitle("Select Unit");
UnitSelection.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
}
});
AlertDialog alert = UnitSelection.create();
break;
case R.id.help: Toast.makeText(this, "This will launch the Help screen", Toast.LENGTH_LONG).show();
break;
}
return true;
}
非常感谢您的时间和帮助!
alert.show()
。或者,UnitSelection.show()
应该创建并显示此对话框。 - harism