【问题标题】:Android -- Object Creation/Memory Allocation vs. PerformanceAndroid——对象创建/内存分配与性能
【发布时间】:2010-06-14 17:49:04
【问题描述】:

这可能是一件容易的事。我当前的项目中有大约 20 个 TextViews/ImageViews,我可以这样访问:

((TextView)multiLayout.findViewById(R.id.GameBoard_Multi_Answer1_Text)).setText("");

//or

((ImageView)multiLayout.findViewById(R.id.GameBoard_Multi_Answer1_Right)).setVisibility(View.INVISIBLE);

我的问题是,从性能的角度来看,我是不是更好,只是分配这些对象变量?此外,作为 findViewById(...) 方法的一部分,我是否会因为不断的“搜索”过程而失去一些性能? (即 findsViewById(...) 是使用某种哈希表/哈希图进行查找还是在视图层次结构上实现迭代搜索?)

目前,我的程序从不使用超过 2.5MB 的 RAM,那么分配 20 个左右的对象变量会显着影响这一点吗?我不这么认为,但我想我会问。

谢谢。

【问题讨论】:

    标签: android performance memory


    【解决方案1】:

    是的,缓存对视图的引用是正确的。这就是 ListViewTag/Holder 的意义所在。出于性能原因。

    【讨论】:

      猜你喜欢
      • 2014-03-31
      • 2023-03-18
      • 2012-01-08
      • 2012-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-23
      相关资源
      最近更新 更多