相关疑难解决方法(0)

最佳实践:方向更改期间的AsyncTask

AsyncTask 在另一个线程中运行复杂任务是一件好事.

但是当AsyncTask仍在运行时有方向更改或其他配置更改时,将Activity消除并重新启动电流.并且当实例AsyncTask连接到该活动时,它会失败并导致"强制关闭"消息窗口.

所以,我正在寻找某种"最佳实践"来避免这些错误并防止AsyncTask失败.

到目前为止我看到的是:

  • 禁用方向更改.(当然不是你应该如何处理它.)
  • 让任务存活并通过新的活动实例更新它 onRetainNonConfigurationInstance
  • 只需在销毁时取消任务,ActivityActivity在再次创建时重新启动它.
  • 将任务绑定到应用程序类而不是活动实例.
  • "shelf"项目中使用的一些方法(通过onRestoreInstanceState)

一些代码示例:

屏幕旋转期间的Android AsyncTasks,第一部分第二部分

ShelvesActivity.java

你能帮我找到最好的方法来解决问题并且易于实现吗?代码本身也很重要,因为我不知道如何正确解决这个问题.

multithreading android exception

149
推荐指数
3
解决办法
7万
查看次数

如何在Android项目中从头开始设置DAGGER依赖注入?

如何使用Dagger?如何配置Dagger在我的Android项目中工作?

我想在我的Android项目中使用Dagger,但我发现它令人困惑.

编辑:Dagger2也从2015年04月15日开始,它更令人困惑!

[这个问题是一个"存根",我在我的答案中添加了更多关于Dagger1的知识,并且更多地了解了Dagger2.这个问题更多的是指导而不是"问题".

android dependency-injection dagger dagger-2

96
推荐指数
2
解决办法
2万
查看次数

活动中的访问片段?

我有 2 个片段的一项主要活动。两个片段都有一个ListView. 我想更新MainActivity. 有没有办法在活动中访问片段列表适配器,而无需将适配器设为静态适配器。目前我正在这样做Mainactivity.java

public void updatelist() {
  if(fragmentstate=0)
    Fragment1.adapter.notifyDataSetChanged();
  else
    Fragment2.adapter.notifyDataSetChanged();

}
Run Code Online (Sandbox Code Playgroud)

android android-listview android-fragments

5
推荐指数
1
解决办法
7626
查看次数