这就是问题所在:
Activity 开始 - 在 onResume() 中在填充 ListView 的后台线程中做一些工作。这是在按照下图显示进度对话框的同时完成的:
该工作完成 - 进度对话框被告知 .dismiss();
对话框消失了——可以看到我的 ListView ,但是 Activity 失去了焦点——并且有点暗淡到背景中。这迫使我按下主页,并在重新打开之前强行关闭 - 按照这个例子:
每次应用程序首次运行时都会出现此问题。在应用程序锁定总是成功之后运行,问题再也不会出现了!正如您在图片中看到的那样 - 一切都变暗了 - 但是在强制关闭后,重新打开 View 会像我期望的那样响应,一切正常。 logcat 中没有任何内容可以帮助我诊断问题 - 所有代码似乎都能正常运行。
请帮忙!
重播列表 Activity 部分的代码转储在这里:http://pastebin.com/YG59VFPu - 它可能很难遵循 - 但在第一次运行时它会做一个 dropbox 登录,这是有效的 - 然后它会做 findAllReplays() - 这也有效 - 最终以 returnres runnable 结束,这导致对话框被关闭 - 这也有效 - 这似乎是问题发生的地方......
最佳答案
好吧,最后我做了以下事情。
我创建了一个 AsyncTask - 它在执行前以相同的方式创建了对话框,在 doinbackground 结束时它关闭了对话框,因为我的 onPostExecute 从不执行 - 但是在 doinbackground 结束时关闭对话框有效。这就是我正在使用的,它基本上解决了我的问题。
关于Android Activity 变暗、失去焦点和卡住 - 没有错误消息并且在首次运行后工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11173927/