android - menu event handling
问题描述
I want to set a list of choice after selected the language choice in menu list.
The list works in the normal button case (onClick) but menu.
Anything I should notice?
sorry for my english
switch (item.getItemId()) {
case R.id.changeCity:
showInputDialog();
return true;
case R.id.Language:
List<String> language = new ArrayList<String>();
language.add(getString(R.string.english));
language.add(getString(R.string.chinese));
new AlertDialog.Builder(WeatherClass.this)
.setSingleChoiceItems(language.toArray(new String[language.size()]), 0,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.show();
return true;
default:
return super.onOptionsItemSelected(item);
}
what I want
解决方案
首先显示语言选择对话框,然后根据位置或文本显示另一个带有内容的对话框。
case R.id.Language:
final CharSequence[] items = { "English", "Chinese"};
AlertDialog.Builder builder = new AlertDialog.Builder(WeatherClass.this);
builder.setTitle("Selection");
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int position ) {
List<String> language = new ArrayList<String>();
if (position == 0) {
// language = "english data"
}
if (position == 1) {
// language = "chinese data"
}
new AlertDialog.Builder(WeatherClass.this).setSingleChoiceItems(language.toArray(new String[language.size()]), 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// second dialog data
}
})
.show();
}
}).show();
return true;
推荐阅读
- python - 如何使用 matplotlib FuncAnimation 显示 numpy 数组的滑动窗口
- logging - 修复日志消息中的严重性和设施
- machine-learning - weighted_metric 如何支持 Keras 中的 sample_weight
- windows - 使用 net 调试目标计算机 (VM) 时,WinDbg 失败并出现错误 0x80004005
- python - 将主代码中的 Print() 输出到 PyQT5 中的标签
- css - 将“重复”与“自动调整”和固定宽度列组合在一个“网格模板列”中
- flutter - google ml 套件安装包:google_ml_kit_example
- php - PHP读取在线Excel文件而不下载文件
- python - 看不到 2 个数据帧之间有什么区别
- reactjs - React 中的条件列表渲染