由于我不了解背景中发生的事情(或者我懒得学习和记忆),我有这个非常简单的问题。
例如,如果我将文本分配给TextView,我可以从我所知道的那里获得两个选项:
((TextView)findViewById(R.id.random_id)).setText("random text");
//or
TextView tv = (TextView) findViewById(R.id.random_id);
tv.setText("random text");
显然,除了保存一行代码之外,我认为第一种选择更好,但如果有人知道他在说什么并且可以确认这一点,我会很高兴。
如果第一个选项更好/更快,当我在一个方法中使用相同的视图时,仍然值得使用四次,或者在开始时将视图分配给变量然后只使用变量更好吗?
答案 0 :(得分:3)
findViewById()
是一个昂贵的电话。
如果您对视图进行多次操作,最好将视图存储在变量中。
如果您只对视图进行一次操作且从不多次操作,则无关紧要。通过不将其存储在变量中可能获得的内存或性能提升可以忽略不计。