0
我想打開一個警報對話框,其中有一個列表供用戶選擇一些選項,但對話框將從選項菜單項打開。我已經包含了選項和對話框菜單的代碼。試圖用選項菜單打開一個對話框菜單項
public void OnOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case SECTION:
showDialogMenu();
new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
showDialogMenu();
Log.d("Dialog used.","here");
}
}; break;
}
}
public void showDialogMenu(){
Log.d("showDialogMenu()", "Method was called.");
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.dialogueTitle);
builder.setPositiveButton("Melee", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=0;
whichImage(num);
}
});
builder.setPositiveButton("Pistols", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=27;
whichImage(num);
}
});
builder.setPositiveButton("Shotguns", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=38;
whichImage(num);
}
});
builder.setPositiveButton("Rifles", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=43;
whichImage(num);
}
});
builder.setPositiveButton("Sub-Machine Guns", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=58;
whichImage(num);
}
});
builder.setPositiveButton("Light Machine Guns", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=68;
whichImage(num);
}
});
builder.setPositiveButton("Sniper Rifles", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int item) {
num=72;
whichImage(num);
}
});
builder.show();
}
我確信有針對對話框中的show()方法,我認爲在這之前是問題,但被點擊菜單項時,沒有出現。任何幫助將不勝感激,謝謝。