我有一個自定義對話框,對話框的佈局文件包含ID按鈕 「submit_btn
」 。
在Java代碼中,我setOnClickListener
到對話框的submit_btn
按鈕:
View view = layoutInflater.inflate(R.layout.info_dialog, null);
AlertDialog infoDialog = new AlertDialog.Builder(MyActivity.this)
.setView(view)
.create();
infoDialog.show();
Button submitBtn = (Button) view.findViewById(R.id.submit_btn);
submitBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//ERROR: Cannot refer to a non-final variable infoDialog inside an inner class defined in a different method
infoDialog.dismiss();
}
});
然後,當我打電話infoDialog.dismiss();
,Eclipse的提高其抱怨Cannot refer to a non-final variable infoDialog inside an inner class defined in a different method
錯誤。如何根據我的代碼擺脫這個問題?
杜普洛:http://stackoverflow.com/questions/2825272/dismiss-一個自定義對話框 – 2012-02-27 15:55:19
使它最終? – WarrenFaith 2012-02-27 16:04:38
如果您反對將其作爲最終答案,我對該答案進行了編輯。是否有理由不想最終標出它? – bytebender 2012-02-27 16:59:56