Android studio 3.6.0 绑定视图使用方法

1.确保你的 build gradle 最低为3.6.0

​dependencies {        classpath 'com.android.tools.build:gradle:3.6.0'               }​

2、在你的项目里的build gradle配置以下代码,注意 是在 android { } 里面配置 

android{

     viewBinding{

           enabled = true;  }

      }

android {       //.........    viewBinding {         enabled = true;    }}dependencies {   //.......}

3、代码使用方法

如果你的 MainActivity 加载的是 activity_main.xml 文件,那么你在 MainActivity 就可以使用 ActivityMainBinding

来绑定,注意ActivityMainBinding 是根据你的xml文件名生成的 如果你是login_activity.xml 那么会对应的来生成

LoginActivityBinding。

原来的onCreate方法是这样的

public class MainActivity extends Activity {          @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);                 setContentView(R.layout.activity_main);            }

使用绑定视图之后是这样的

public class MainActivity extends Activity {        ActivityMainBinding binding;//这个是你对用的XML文件生成的    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);                binding = ActivityMainBinding.inflate(getLayoutInflater());        setContentView(binding.getRoot());            }

假如你的布局里有 TextView 和 Button 两个组件 id 分别为 text 和 button  如下

                                             

那么视图绑定功能的使用时这样的,省去了findViewById的过程

​public class MainActivity extends Activity {        ActivityMainBinding binding;//这个是你对用的XML文件生成的    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);                binding = ActivityMainBinding.inflate(getLayoutInflater());        setContentView(binding.getRoot());            }            protected void initView() {        binding.text.setText("视图绑定练习");        binding.button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                //按钮点击事件            }        });    }​}

简单的使用记录下,适配器,Fragment等绑定基本差不太多,欢迎自行探索

public class FragmentOne extends BaseFragment{    FragmentOneBinding binding;       @Override    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup                               container, @Nullable Bundle savedInstanceState) {        View view = inflater.inflate(R.layout.fragment_one,container,false);        binding = FragmentOneBinding.bind(view);        return view;    }}

 

更多相关文章

  1. android菜单Tips
  2. UI组件之AdapterView及其子类(二)GridView网格视图的使用
  3. Android(安卓)Jni示例
  4. Android(安卓)中文 API (102)—— CursorAdapter
  5. android studio 中一些比较好的插件
  6. Android(安卓)IDL 小例子
  7. Android(安卓)SharedPreferences和File
  8. Android学习笔记06:线性布局LinearLayout
  9. Android(安卓)中文 API (29) —— CompoundButton

随机推荐

  1. Android9.0 添加APP后台防杀机制
  2. Android 和 JS 交互时调用不成功解决方法
  3. Android在Activity中获得控件宽高和截屏
  4. android退出登陆后,清空之前所有的activit
  5. android 自动获取时间,网络提供的值
  6. Android动画效果translate、scale、alpha
  7. 实战android菜单项之XML加载菜单与动态菜
  8. Android实现简易记事本
  9. android 横向ListView Viewpager Gridvie
  10. Android--自定义带提示文本的EditText组