0
我正在製作一個簡單的遊戲,您可以放置瓷磚來增加連鎖酒店並在戰略上增加您的財富。在某些情況下,您可以選擇選擇想要創建的酒店類型,並顯示以下對話框。AlertDialog麻煩(空?)
下面的代碼:
public void convertToHotelDialog(final Tile tile){
if(AVAILABLE_HOTELS.size() != 0){
String[] tempHotel = new String[AVAILABLE_HOTELS.size()];
AlertDialog.Builder hotelDialog = new AlertDialog.Builder(this);
hotelDialog.setTitle(this.getResources().getString(R.string.hotel_dialog_title));
hotelDialog.setMessage(this.getResources().getString(R.string.hotel_dialog_message));
for (int i = 0; i < AVAILABLE_HOTELS.size(); i++) {
tempHotel[i] = new String();
tempHotel[i] = AVAILABLE_HOTELS.get(i);
}
hotelDialog.setItems(tempHotel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
String hotelName = AVAILABLE_HOTELS.get(which);
convertToHotel(tile, getHotelCodeByName(hotelName));
}
});
hotelDialog.show();
} else {
AlertDialog.Builder hotelDialog = new AlertDialog.Builder(this);
hotelDialog.setTitle(this.getResources().getString(R.string.hotel_dialog_title));
hotelDialog.setMessage(this.getResources().getString(R.string.hotel_dialog_fail_message));
hotelDialog.show();
}
}
我已經運行調試,並通過它踩我的方式。它正在遍歷代碼的一部分,但對話框顯示爲完全空白。 標題正確,但消息和微調只是不存在。
也許我完全不明白setItems是如何工作的?
任何幫助將不勝感激。在此先感謝, JRad
哇。這很順利。我取消了取消按鈕,因爲他們必須選擇一家酒店,但這很好。非常感謝。如果你不介意,我有點想知道爲什麼我的代碼不能像例外那樣工作。它是如何變成空白的?瞭解他們爲什麼會幫助我在未來避免這類問題。 –
其實我不知道,因爲我從來沒有使用setItems方法,我一直使用我在我的答案張貼的方式。 – Giacomoni