我的 ViewController 有一个 dataSource
,在我的例子中,它必须从 Web 服务获取数据。当我在 ViewController 中假设数据源方法将花费很长时间并且仅从另一个线程调用它们时,这是不好的做法吗?
所以我执行以下操作:
- 显示项目列表
- 用户触摸单元格
- DetailViewController 会立即显示,其父级是其
dataSource
- 现在是 DetailViewController
- 显示加载指示器
- 向 dataSource 请求另一个线程中的数据
- 完成后隐藏指示器(在主线程上调用)
最佳答案
老实说,与您通常看到的一些方法相比,我更喜欢这种方法:
- 用户触摸单元格
- 当前的
UIViewController
向DataSource请求数据 - 数据源向网络服务发出请求。
- 完成后,新的
UIViewController
会加载数据。
尽管如此,如果您在单元格上放置一个旋转器或某种显示背景上正在发生某些事情的视觉引用,您可能会给用户带来良好的体验。无论哪种方式,有时都是品味、用户体验甚至客户需求的问题。
Is it bad practise when I assume in my ViewController that the dataSource-methods will take quite long
Murphy Law ...因此,假设这种情况并在发生这种情况时创建必要的机制是一个很好的做法。
关于iphone - 假设 ViewControllers 数据源需要花费大量时间来返回结果,这是一种不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11341679/