0
因此,我已經在Android活動中獲得了AlertDialog的代碼,雖然它在正確的時刻運行並彈出,但當我按下「確定」按鈕時,它應該保存我放入的兩個變量,分成2個字符串,這些字符串在活動之後應該能夠使用這些字符串。從Android中的AlertDialog返回/保存值?
private void showDialog(){
AlertDialog.Builder alertdg = new AlertDialog.Builder(this);
alertdg.setTitle("Choose page");
alertdg.setMessage("Choose episode/page");
final EditText page = new EditText(this);
final EditText episode = new EditText(this);
page.setWidth(210);
episode.setWidth(210);
LinearLayout layout = new LinearLayout(this);
layout.addView(episode);
layout.addView(page);
alertdg.setView(layout);
alertdg.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
episodeString = episode.getText().toString();
pageString = page.getText().toString();
}
});
alertdg.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
});
alertdg.show();
}
是的,如果你想知道我已經宣佈了2串「episodeString」,並在活動開始的地方「pageString」,我知道我正確地宣佈他們。現在我想知道的是,爲什麼我不能返回這些值,以便其餘的活動可以使用它們?我已經嘗試了很多次,但對話框不會返回/保存值...我做錯了什麼?
你調試的代碼的這一部分?如果是,你是否打印過onClick後的值。我假設在OnClick中存在問題 –
嗯,你正在做的一切都是正確的。所以技術上你的代碼應該可以工作。你能告訴我如何/何時訪問這些變量,以及你在哪裏定義了它們。 就像@Drax說的那樣,嘗試在onClickListener中記錄值,確保你至少得到了值。 –
我想我知道你在做什麼,你是否試圖在調用'showDialog'時儘快使用這些變量?看到,只有在按下OK按鈕之後,變量纔會被填入數值,直到它們變空爲止。我希望這能解決這個問題。 – st0le