正确设计,以便为不同视图使用相同的数据

问题描述 投票:0回答:1

我是企业界的新手,从设计的角度来看,如果我在这里做错了,请纠正我

我从Flickr API获取图像。

目标:以两种不同类型的视图,网格视图和列表视图显示这些图像。哪个可以通过幻灯片切换。

所以我使用的是一个带有两个片段的View寻呼机,这两个片段都有不同的监听器。因此,当响应来自Flickr时,这两个听众都会收到通知。

在我看来,这节省了两次调用REST API,但我正在寻找更高效的设计或流程

  • 使用单个监听器
  • 应该调用Rest API一次
  • 结果应该是store(Just in ArrayList)并共享给两个视图
  • 可能不会选择两个单独的片段
  • 避免两次创建Adapter对象
  • 图像应存储在缓存中

任何调整或建议都会有所帮助,如果您不理解任何部分或整个问题,请发表评论。

android android-fragments caching android-viewpager android-gridview
1个回答
0
投票

对于上述问题,你正在思考的调整几乎是正确的。除下面之外:

我相信您必须创建两个不同的适配器才能更好地控制不同的视图。例如,您可能希望在列表视图中使用缩放类型裁剪中心显示图像,但在网格视图中显示缩放类型中心内部的图像。您可能想要执行不同类型的事情。因此,制作两个不同的适配器是一个很好的做法,以使代码更易于管理。

对于片段也是如此,看看两个片段中的动作是否相同,或者可以通过单个变量传递来完成。然后只用一个片段。

其余的东西都很完美。

© www.soinside.com 2019 - 2024. All rights reserved.