在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調用}}