android basebindActivity xml怎么生成对应的bind
生成对应的bind可以使用Data Binding Library,具体步骤如下:
- 在app的build.gradle文件中添加以下依赖:
android {
...
dataBinding {
enabled = true
}
}
dependencies {
...
implementation 'com.android.databinding:compiler:3.1.4'
}
- 在xml文件中添加layout标签,并在其中定义变量和绑定的视图:
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="viewModel"
type="com.example.MyViewModel" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:text="@{viewModel.myText}"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</layout>
- 在Activity中使用DataBindingUtil来绑定xml文件:
import android.databinding.DataBindingUtil;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.example.databindingexample.databinding.ActivityMainBinding;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
MyViewModel viewModel = new MyViewModel();
binding.setViewModel(viewModel);
}
}
- 最后,使用binding对象来访问视图和变量:
binding.viewModel.setMyText("Hello World!");
String myText = binding.viewModel.getMyText();
``
原文地址: https://www.cveoy.top/t/topic/eg96 著作权归作者所有。请勿转载和采集!