在Android中使用Java语言将ViewBinding封装到基类中,操作步骤如下:
1、在项目的build.gradle
文件中启用了ViewBinding,添加以下代码:
android {...buildFeatures {viewBinding true}
}
2、创建一个名为“BaseActivity
”的基类,继承自AppCompatActivity
,并使用“泛型参数<VB>
”表示ViewBinding类型。在这个基类中实现ViewBinding的初始化和绑定。
import androidx.appcompat.app.AppCompatActivity;
import androidx.viewbinding.ViewBinding;public abstract class BaseActivity<VB extends ViewBinding> extends AppCompatActivity {protected VB viewBinding;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);viewBinding = initViewBinding();setContentView(viewBinding.getRoot());initData();}protected abstract VB initViewBinding();/* 子类中:后续具体执行业务逻辑的方法 */protected abstract void initData();
}
3、在具体的Activity中,继承自“BaseActivity
”,并指定“ViewBinding的类型”。例如:Activity名为“MainActivity
”,可以这样实现:
import com.example.demo.databinding.ActivityMainBinding;public class MainActivity extends BaseActivity<ActivityMainBinding> {@Overridepublic ActivityMainBinding initViewBinding() {return ActivityMainBinding.inflate(LayoutInflater.from(this));}@Overridepublic void init() {//处理具体业务viewBinding.text.setText("hello"); //TextView调用viewBinding.button.setText("hello"); //Button调用}}