首页 > 解决方案 > 将 setOnClickListener 内容移动到功能是否相同?

问题描述

我想以不同的方式组织我的代码,我不确定它是否具有相同的效率。

做这个:

@Override
protected void onCreate(Bundle savedInstanceState) {
    Button loginButton = findViewById(R.id.editTextLogin);
    loginButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.i("go", "This button clicked");
        }
    });
}

等于:

@Override
protected void onCreate(Bundle savedInstanceState) {
    Button loginButton = findViewById(R.id.editTextLogin);
    loginButton.setOnClickListener(listener());
}
private View.OnClickListener listener(){
    return new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.i("go", "This button clicked");
        }
    };
}

标签: javaperformanceandroid-studio

解决方案


推荐阅读