在活动中加载UI组件的最佳实践

时间:2016-04-20 19:55:29

标签: android android-layout

是否存在将UI元素绑定到活动中的变量的约定或最佳实践?我通常会这样做:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        loadElements();
    }

private void loadElements(){

button1=(Butotn)findViewByID(R.id.button1);
txV1=(TextView)findViewByID(R.id.texview1);

 }

在某处,我读到findViewByID()可能会很费力。这是真的吗?

1 个答案:

答案 0 :(得分:3)

虽然这不是一个真正的约定,但您可以考虑使用名为ButterKnife的库(还有其他一些,但这个似乎最受欢迎),这样就可以在不需要的情况下为您完成写下所有这些无聊的样板代码。所以你的代码可以缩小尺寸看起来像这样:

@Bind(R.id.button1)
Button button1;

@Bind(R.id.texview1)
TextView txV1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);
}