装载机
- 监控数据源并提供新结果
- 配置更改后:无需重新查询数据
我阅读了有关 Loaders 的 android 指南.
我读了亚历克斯洛克伍德 4 部分 tutorial .测试了他的 sample app也。
尝试阅读 Google App for I/O 13,有一个 Stream 功能并阅读其代码发现它使用 Loaders,因为它提供了创建 StreamLoader
的代码。这里是 Link
我想他们用它来监控新数据并将它们添加到他们的 View 中。
Alex 的应用也是如此。有一个观察者,当有新数据条目时触发 UI 刷新。
到目前为止,在我看来,加载程序是“livescore”应用程序的理想选择。当有新的更新(这意味着新的数据条目)时,它会出现在您的屏幕上。
也许像 Twitter。为您提供新消息,自定义 Observer
以通知更改,自定义 Loader
带来数据和适配器以显示它们。无需“拉动刷新”。
但话说回来,Twitter 有自己的 RESTful API,可以做同样的工作。不需要指向新数据的指针。 (不知道他们是怎么做到的,但我猜想以某种方式将新数据“推送”到您的设备)。
所以我的问题是:
Loaders are best option when we want to observe a data source and change our view so it will display the new data?
Are there any examples/app I can check dealing with that logic : monitor the data source -> get the data -> refresh UI
当我们必须处理它们时,我们必须选择加载器的任何典型案例(比如我之前提到的“livescore”案例)?
加载器的第二部分(配置更改,保留数据)我认为它很清楚。当用户旋转设备时,没有人愿意重新下载图片库。
谢谢你,请原谅我的困惑
最佳答案
我可以描述加载程序的最佳方式是始终开启的处理程序。 Loaders 和 Handlers 都在对象之间传递数据。
我同意你所说的“livescore”应用程序。 Loader 会监控其数据的来源,并在内容发生变化时提供新的结果。
回答您的问题:
1) 当我们想要观察数据源并更改 View 以显示新数据时,加载器是最佳选择?
答:是的。如果您的数据源不断更新。例如,就像一个股票行情应用程序。如果您的数据不是不断更新,那么不,不要使用加载器。例如,如果您的数据源只检索一次,则不需要加载器。
2) 是否有任何示例/应用程序我可以检查处理该逻辑:监控数据源 -> 获取数据 -> 刷新 UI
关于android - 何时使用 Android 加载器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18140541/