Android的ViewBinding
ViewBinding可以方便的绑定定义视图的xml文件,使得在编写与UI控件交互的代码更加容易和方便。
一、配置ViewBinding
要使用ViewBinding技术,需要在对应的应用模块的build.gradle中配置viewBinding。
具体配置有两种方式:
(1)只在Kotlin语言版本中使用
android {...viewBinding {enabled = true}}
(2)可以在Java/Kotlin语言中均可以使用,则配置
android {...buildFeatures {viewBinding true}}
二、应用ViewBinding
1.定义MainActivity的布局文件activity_main.xml如下显示:
<?xml version="1.0" encoding="utf-8"?>
<TextViewandroid:id="@+id/textView"android:layout_width="match_parent"android:layout_height="match_parent"android:text="@string/hello_blank_fragment" />
```
2. 在MainActivity修改TextView的内容执行如下代码:
class MainActivity : AppCompatActivity() {
lateinit var binding:ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)binding = ActivityMainBinding.inflate(layoutInflater)setContent(binding.root)binding.textView.text="viewBinding的应用"}
}
因为在模块中启用viewBinding绑定之后,系统会为该模块中的每个 XML 布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有 ID 的所有视图的直接引用。参考文献
https://developer.android.google.cn/topic/libraries/view-binding?hl=zh-cn
Android的ViewBinding相关推荐
- 【OkHttp】Android 项目导入 OkHttp ( 配置依赖 | 配置 networkSecurityConfig | 配置 ViewBinding | 代码示例 )
OkHttp 系列文章目录 [OkHttp]OkHttp 简介 ( OkHttp 框架特性 | Http 版本简介 ) [OkHttp]Android 项目导入 OkHttp ( 配置依赖 | 配置 ...
- Android View Binding的使用
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/120751996 本文出自[赵彦军的博客] 文章目录 什么是View Binding ...
- Android kotlin使用id直接做view的引用
在build.gradle中加入: plugins {id 'com.android.application'id 'kotlin-android'id 'kotlin-android-extensi ...
- ViewBinding和DataBinding的理解和区别
之前一直把ViewBinding当成了DataBinding,直到最近的学习中才发现他们不是一个东西.于是写下这篇笔记帮助理解和区分他们俩. 一.ViewBinding 1.什么是ViewBindin ...
- 【译】迁移被废弃的Kotlin Android Extensions插件
原文:Migrating the deprecated Kotlin Android Extensions compiler plugin 作者:Ahmad El-Melegy 在Kotlin 1.4 ...
- Unresolved reference: synthetic 【Android】【Android Studio】【kotlin-android-extensions】
问题描述 今天编译旧的Android项目发现编译时报错了: e: xxx...\LoginActivity.kt: (14, 24): Unresolved reference: synthetic ...
- Android学习-组件自动绑定
文章目录 前言 viewBinding 1. 插件引用 2. 代码使用 2. dataBinding 1. 引用声明(.gradle) 2. 更改布局方式(.xml) 3. 代码使用 总结 前言 本博 ...
- 迁移废弃的Kotlin Android Extensions插件
1.视图绑定 删除: apply plugin: 'kotlin-android-extensions' 使用: android {...buildFeatures {viewBinding true ...
- Android 开发笔记整理,比较全
四层架构体系 第一层 Linux内核层 安卓是 Linux 内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动.音频驱动.照相机驱动.蓝牙驱动.Wi-Fi驱动.电源管理等. 第二 ...
最新文章
- Spring 注解的作用
- 小白实操ESP8266AT固件烧录,版本1.7.1,希望对爱玩ESP8266的开发小伙伴有帮助!
- SAP 电商云 Spartacus UI 修改代码后,重新构建基于 SSR 版本的程序报错
- pandas 每一列相加_Python数据分析——Pandas 教程(上)
- Silverlight4.0教程之WebBrowser控件(Silverlight内置HTML浏览器控件)
- dubbo之.xml配置文件报错
- 三菱880彩铅和uni的区别_【彩铅基础】水溶性彩铅是什么?
- windows server 2008中IIS7的功能模塊
- shell中单引号、双引号、反引号、反斜杠的使用
- php执行另一个页面,从另一个PHP脚本执行PHP脚本
- zabbix 如何监控tcp的SYN,establised?
- CSS3 3D旋转魔方
- INTO CORRESPONDING FIELDS OF、去掉前导零,增加前导0。不显示物料号的前导零
- RxJava个人笔记,具象化理解
- Android 百度地图反向Geo “PERMISSION UNFINISHED“
- 提高计算机启动速度的是什么,三种方法让你实现电脑秒开!提升电脑开机速度就是这么简单!...
- ZipFile 解压多个.zip压缩文件
- 巴菲特50年投资之道
- python数据挖掘领域工具包
- 人工智能教程 - 1.1.1 什么是神经网络
热门文章
- 瑞典皇家理工学院计算机科学世界排名,2019-2020瑞典皇家理工学院世界排名多少【QS最新第98名】...
- CCNP路由部分精华
- 软件调试之CPU基础
- 中国煤油产业发展现状及前景展望,煤油共炼是未来趋势「图」
- 编写一个三子棋游戏,和弱智电脑下棋
- espeak 中文语音包_从零开始搭建一个语音对话机器人
- Android密码字符为真,Android:仿支付宝交易密码框
- 超级实况服务器维护中,超级实况更新版
- 在线教育平台如何抓住知识付费“风口”带来的机会
- 记录Rocketmq定时消息不消费问题的排查过程