Android ViewBinding 的简单使用,替代findViewById、ButterKnife、Kotlin Extension

前置

AndroidStudio至少要升级到3.6

配置启动

android {
    ...
    viewBinding {
        enabled = true
    }
  	...
}

或者

android {
   ...
    buildFeatures {
        dataBinding = true
        // for view binding :
        viewBinding = true
    }
    ...
}

自动生成的代码位置

在这里插入图片描述

在Activity中使用

    private ActivityMain2Binding viewBinding;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        viewBinding = ActivityMain2Binding.inflate(LayoutInflater.from(this));
        setContentView(viewBinding.getRoot());
        viewBinding.tvText1.setText("123");
        viewBinding.tvText2.setText("456");
        viewBinding.tvText3.setText("789");
    }

在Fragment中使用

    private FragmentHomeBinding viewBinding;

    public View onCreateView(@NonNull LayoutInflater inflater,
                             ViewGroup container, Bundle savedInstanceState) {
        View root = inflater.inflate(R.layout.fragment_home, container, false);
        viewBinding = FragmentHomeBinding.bind(root);
        viewBinding.textHome.setText("123");
        viewBinding.btConfirm.setText("456");
        viewBinding.btConfirm.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Main2Activity.start(getContext());
            }
        });
        return root;
    }


版权声明:本文为yu540135101原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。