基于ViewBinding的BaseActivity封装
Android Studio升级到4.1,BindView提示Resource IDs will be non-final in Android Gradle Plugin version 5.0, avoid using them as annotation attributes,现在改为使用ViewBinding。
但是所有Activity使用的是BaseActivity基类,发现继承BaseActivity的Activity找不到控件,找了好多参考,都不太一样。
原来BaseActivity的写法:
//activity_base.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bg_color_dark_normal"
android:orientation="vertical">
<!-- 标题栏 -->
<XXX.XXX.XXX.MyTitleBar
android:id="@+id/title_bar"
android:layout_width="match_parent"
android:layout_height="55dp" />
<!-- 内容 通过 addView(getLayoutInflater().inflate(getLayoutId(), null)); -->
<FrameLayout
android:id="@+id/fl_content"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
<