[Android性能]:每次我需要它或者使它成为一个字段变量时我会发现ViewById

时间:2016-12-18 18:22:18

标签: android performance android-layout

对内存管理和性能有什么好处? 在需要时调用元素,或者多次需要调用元素使其成为字段变量 例如:

 private void setNumber(int intNumber) {
        TextView number = (TextView) activity.findViewById(R.id.number);

        String numberString = "#" + String.valueOf(intNumber);
        number.setText(numberString);
        number.animate().alpha(1f).setDuration(1000).start();
        number = null;

    }

在这个函数中,每次调用该函数时,元素number都会被其id调用,但也许这样做太昂贵了,并且不会使这个事实变得更加充实,尽管它不需要内存不会是自由的,做得更好。

class{
    TextView number;

    constructor{

    number = (TextView) activity.findViewById(R.id.number);

    }

private void setNumber(int intNumber) {

    String numberString = "#" + String.valueOf(intNumber);
    number.setText(numberString);
    number.animate().alpha(1f).setDuration(1000).start();
    number = null;

    }
}

幻灯片说明:大约每60秒就需要一个这个元素

1 个答案:

答案 0 :(得分:0)

我强烈建议您查看此帖子Efficiency of findViewById

因为调用 findviewbyid 会导致很多性能损失,您是否有很多想要操作的视图。