Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android效率-视图_Java_Android_Performance_Memory_Android Layout - Fatal编程技术网

Java Android效率-视图

Java Android效率-视图,java,android,performance,memory,android-layout,Java,Android,Performance,Memory,Android Layout,最好是findViewById()一次并存储在活动范围内(类范围内),还是每次使用调用上述函数,以便在退出当前范围/方法时回收资源 我想这可以归结为findviewbyd()与在类范围内存储视图对象的成本相比有多高。我认为性能差异是不可察觉的。更重要的是你的代码看起来如何。。。当您使用findViewById调用填充活动类时,它是否可读?您只存储对视图的引用;存储成本很低。我见过的大多数高质量代码都会为每个活动找到一次视图,因此我认为这是最佳实践。可读性和可维护性只是额外的奖励。没错,可读性很重

最好是
findViewById()
一次并存储在活动范围内(类范围内),还是每次使用调用上述函数,以便在退出当前范围/方法时回收资源


我想这可以归结为
findviewbyd()
与在类范围内存储视图对象的成本相比有多高。

我认为性能差异是不可察觉的。更重要的是你的代码看起来如何。。。当您使用
findViewById
调用填充活动类时,它是否可读?

您只存储对视图的引用;存储成本很低。我见过的大多数高质量代码都会为每个活动找到一次视图,因此我认为这是最佳实践。可读性和可维护性只是额外的奖励。

没错,可读性很重要,但在移动设备上,关注性能细节似乎很重要,特别是在android这样的平台上,不可预知的硬件驱动着它。是的。。。还是不太重要。过度优化有时并不好。当然,你说的是硬件资源有限的设备,等等。。。但是你最好注意不要创建太多的对象,以一种有效的方式管理位图,等等。我非常同意,所以在这一点上,是不是多次调用findViewById来创建多个对象?一点也不。。。它只是检索对现有对象的引用。这就是为什么我说性能差异必须是无形的或不存在的。