0
當我按主頁按鈕將我的應用程序推到背景中,然後繼續時,有時候應用UI元素沒有焦點。整個屏幕呈灰色(亮度降低),並且沒有任何屏幕按鈕可以被點擊。更何況,事件的硬件按鈕除了音量,電源和家庭不起作用。唯一的解決辦法是強制停止應用程序並重新開始。 此問題不可複製,並且在隨機場合中很少發生。其他人在他們的應用程序中看到過這個問題嗎Android:當背景中的對話被解除時,活動不會獲得焦點
編輯::::::::::
我發現真正的問題。這是更具可重複性:我打網絡服務下載數據在AsyncTAsk,
和顯示ProgressDialog
。當顯示對話框時,如果用戶按下home鍵,應用程序將被髮送到後臺。同時,下載完成,對話框被解除。現在,當用戶回到應用程序時,activity
不會收到焦點,實質上,它不會再收到任何觸摸事件。
這裏的異步任務的添加代碼:
class GetStoresTask extends AsyncTask<String, Void, List<String>> {
ProgressDialog pd;
protected void onPreExecute() {
super.onPreExecute();
pd = ProgressDialog.show(DisplayStoresActivity.this,
getResources().getString(R.string.pleaseWait),
getResources().getString(R.string.dialogFindingStores),
true, true);
pd.setOnCancelListener(new OnCancelListener() {
public void onCancel(DialogInterface dialog) {
// TODO Auto-generated method stub
GetStoresTask.this.cancel(true);
}
});
}
protected List<Message> doInBackground(String... params) {
// carried out my download here
return downloadStoresList();
}
protected void onPostExecute(List<String> result) {
// TODO Auto-generated method stub
pd.dismiss();
adapter.notifyDataSetChanged();
super.onPostExecute(storesList);
}
看來當應用程序在後臺,並駁回了對話框,焦點不會轉移到對話框我Activity
。有沒有人遇到類似的問題,或有任何解決方案?
似乎你正在做一些繁重的操作onResume()的活動。 –