kotlin - ViewBinding

前言

为什么用ViewBinding,而不用findViewById(),这个有很多优秀的博主都做了讲解,就不再列出了。

可参考下列博主的文章:
kotlin ViewBinding的使用

文章里也给出了如何在gradle中做出相应的配置。

(我建议先看这位博主的文章,再看我的)

正文

下面主要分享一下我在这篇文章的指导以及其它人的帮助下,成功浅浅使用ViewBinding的经验。只是对上篇博文的一个小小的实例补充。

  • 序号3:因为当前类的类名叫FirstActivity(序号6),所以对应的binding的类名为ActivityFirstBinding。同理,若当前类名为MainActivity,则对应的binding的类名为ActivityMainBinding。
  • 序号1:必须要import,"【当前类的路径】.databinding.【对应的binding的类名】"。
  • 序号4:用"binding.root"来代替"R.layout.activity_first"(我布局的文件名为activity_first,在左边Project栏可以看到)
  • 序号5:调用的时候直接 "binding.【你在布局文件中创建的Button或TextView的id名】",不用再重新实例化一个对象,因为我的布局文件中只有一个Button的对象button1,所以图片里只有button1一个例子。实际上可以随意。
  • 我在gradle中做出相应的配置
相关推荐
是娇娇公主~4 小时前
C++ 中 std::deque 的原理?它内部是如何实现的?
开发语言·c++·stl
SuperEugene4 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
流星白龙5 小时前
【MySQL】7.MySQL基本查询(2)
android·mysql·adb
xuxie995 小时前
N11 ARM-irq
java·开发语言
mldlds5 小时前
MySQL加减间隔时间函数DATE_ADD和DATE_SUB的详解
android·数据库·mysql
wefly20176 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
luanma1509806 小时前
PHP vs C++:编程语言终极对决
开发语言·c++·php
寂静or沉默6 小时前
2026最新Java岗位从P5-P7的成长面试进阶资源分享!
java·开发语言·面试
kyriewen117 小时前
给浏览器画个圈:CSS contain 如何让页面从“卡成PPT”变“丝滑如德芙”
开发语言·前端·javascript·css·chrome·typescript·ecmascript
智算菩萨7 小时前
MP3音频编码原理深度解析与Python全参数调优实战:从心理声学模型到LAME编码器精细控制
android·python·音视频