Android中ViewBinding遇到的坑

目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。

ViewBinding 使用:

1在所使用的的module下添加(确保Android studio为3.6以上版本)

android {
    ..
    viewBinding {
        enabled = true
    }
}

如果在使用的过程中开发者不想为某个布局文件生成binding类在布局中可以添加


  …………

编译次module 生成ViewBinding 辅助类

Android中ViewBinding遇到的坑_第1张图片

使用方法:

public class MainActivity extends AppCompatActivity  {
    private static final String TAG = "Test";
    private  ActivityMainBinding mainBinding ;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mainBinding = ActivityMainBinding.inflate(LayoutInflater.from(this));
        setContentView(mainBinding.getRoot());

        mainBinding.button.setText("我是ViewBinding获取的Button");
        mainBinding.showBtn.setText("My name is guoguo ");
}
}

OK 介绍完了使用方法来说说我目前遇到的坑:

1.第一次编译module生成了ActivityMainBinding  但是在运行时报错告诉我找不到ActivityMainBinding 类,汗!

后来我把布局文件所有控件都加了id后解决了,奇葩现在不明白为什么?(持续会复现,今天重复了几次竟然没有复现)

2. 是Button控件set英文自动转大写,

参考:https://blog.csdn.net/u014309440/article/details/51426462

你可能感兴趣的:(android)