为什么Google在Gmail应用对话列表视图中使用“canvas”?

我一直在使用HierarchyViewer检查Android中的Gmail应用程序,并发现一些有趣的事情,在电子邮件列表中的每个项目看起来像一个canvas视图 – 我期待像一个有子组件的RelativeLayout: HierarchyViewer中Gmail对话列表的屏幕截图

我最初的目的是因为性能原因这样做 – 每个项目的一个canvas视图比每个项目的多个视图要好得多,尤其是在一个很长的列表中,这个列表看上去非常顺利。 这听起来正确吗? Google会在官方文档的任何地方推荐这种方法吗? 其他人应该看待performance吗?

  • 在Android中很好地设置ListView的滚动位置
  • 在Android中,如何设置ListView项目的高度和宽度?
  • 最好使用光标适配器或arrays适配器
  • 从listview传递给gridview
  • listViewdynamic添加项目
  • 滚动时ListView非常慢(使用ViewHolder / recycle)
  • ListView与三角形项目
  • 嵌套Android ViewPager,在ListView中水平滑动ListItems
  • 是更less的视图效率更高的用户界面。 如果你有一个视觉上复杂的UI元素,将它作为一个自定义视图或布局来实现会更有效率,而不是试图编写单独的视图。