电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Android Studio3.6新特性之視圖綁定ViewBinding使用指南

瀏覽:104日期:2022-09-26 17:00:26

View Binding是一項功能,使您可以更輕松地編寫與視圖交互的代碼。在模塊中啟用視圖綁定后,它將為該模塊中存在的每個XML布局文件生成一個綁定類。綁定類的實例包含對在相應布局中具有ID的所有視圖的直接引用。

正文

Android Studio 3.6 Canary 11 及更高版本中推出了ViewBinding功能,ViewBinding將逐步替換掉findViewById,還等什么,抓緊時間學習吧!谷歌官方文檔的ViewBinding Demo是用Kotlin語言寫的,看起來比較生疏,花了點時間,我在Java上實現了類似的代碼,還是看Java比較親切!

下面簡單介紹下如何使用ViewBinding:

修改build.gradle

將 viewBinding 元素添加到其 build.gradle 文件中,添加完后需要重新sync

// Android Studio 3.6.0android { ... viewBinding { enabled = true } }

在 Android Studio 4.0 中,viewBinding 將被變成屬性整合到了buildFeatures 選項中,配置要改成:

// Android Studio 4.0android { buildFeatures { viewBinding = true }}修改java代碼

如果你的布局文件是activity_main.xml,則會生成一個ActivityMainBinding的類,如果你的布局文件是result_profile.xml,則會生成一個ResultProfileBinding的類,以此類推。下面以activity_main.xml及其對應的MainActivity.java為例說明:

假設activity_main.xml放置了三個控件:TextView(Id為text)、Button(Id為button)、ImageView(沒有設置Id),其中ImageView因為沒有設置Id,因此綁定類中不存在對它的引用,所以在代碼中無法被引用。

MainActivity.java的部分代碼如下:

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);// setContentView(R.layout.activity_main); LayoutInflater layoutInflater = LayoutInflater.from(this); ActivityMainBinding binding = ActivityMainBinding.inflate(layoutInflater); setContentView(binding.getRoot()); binding.text.setText('文字已變化'); binding.button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getApplicationContext(), 'Button被點擊', Toast.LENGTH_SHORT).show(); } }); }

注意事項

注意:原先的setContentView(R.layout.activity_main)需要注釋掉,否則會重復設置ContentView。布局的根視圖(activity_main.xml)會自動生成一個名為 rootView 的成員變量。在 Activity 的 onCreate()方法中,要將 rootView傳入 setContentView()方法,從而讓 Activity 可以使用綁定對象中的布局,rootView是私有變量,需要使用getRoot()方法拿到。

工程代碼

完整的工程歡迎到碼云或Github上下載(ViewBindingTest目錄):https://gitee.com/lwjobs/AndroidStudyhttps://github.com/lwjobs/AndroidStudy

視圖綁定ViewBinding的詳細說明請參考:

使用視圖綁定替代 findViewById

總結

到此這篇關于Android Studio3.6新特性之視圖綁定ViewBinding使用指南的文章就介紹到這了,更多相關android studio3.6 視圖綁定ViewBinding內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Android
相關文章:
主站蜘蛛池模板: 新材料分散-高速均质搅拌机-超声波分散混合-上海化烁智能设备有限公司 | 淘趣英语网 - 在线英语学习,零基础英语学习网站 | 上海新光明泵业制造有限公司-电动隔膜泵,气动隔膜泵,卧式|立式离心泵厂家 | 深圳成考网-深圳成人高考报名网 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 北京成考网-北京成人高考网| 馋嘴餐饮网_餐饮加盟店火爆好项目_餐饮连锁品牌加盟指南创业平台 | 招商帮-一站式网络营销服务|搜索营销推广|信息流推广|短视视频营销推广|互联网整合营销|网络推广代运营|招商帮企业招商好帮手 | 钢格板|热镀锌钢格板|钢格栅板|钢格栅|格栅板-安平县昊泽丝网制品有限公司 | 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 暖气片十大品牌厂家_铜铝复合暖气片厂家_暖气片什么牌子好_欣鑫达散热器 | 武汉创亿电气设备有限公司_电力检测设备生产厂家 | MVR蒸发器厂家-多效蒸发器-工业废水蒸发器厂家-康景辉集团官网 | 水上浮桥-游艇码头-浮动码头-游船码头-码瑞纳游艇码头工程 | 菏泽商标注册_菏泽版权登记_商标申请代理_菏泽商标注册去哪里 | 碎石机设备-欧版反击破-欧版颚式破碎机(站)厂家_山东奥凯诺机械 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 | 喷漆房_废气处理设备-湖北天地鑫环保设备有限公司 | 超细|超微气流粉碎机|气流磨|气流分级机|粉体改性机|磨粉机|粉碎设备-山东埃尔派粉体科技 | 环氧乙烷灭菌器_压力蒸汽灭菌器_低温等离子过氧化氢灭菌器 _低温蒸汽甲醛灭菌器_清洗工作站_医用干燥柜_灭菌耗材-环氧乙烷灭菌器_脉动真空压力蒸汽灭菌器_低温等离子灭菌设备_河南省三强医疗器械有限责任公司 | 微波消解仪器_智能微波消解仪报价_高压微波消解仪厂家_那艾 | 达利园物流科技集团-| 欧版反击式破碎机-欧版反击破-矿山石料破碎生产线-青州奥凯诺机械 | 存包柜厂家_电子存包柜_超市存包柜_超市电子存包柜_自动存包柜-洛阳中星 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 时代北利离心机,实验室离心机,医用离心机,低速离心机DT5-2,美国SKC采样泵-上海京工实业有限公司 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 无菌实验室规划装修设计-一体化实验室承包-北京洁净净化工程建设施工-北京航天科恩实验室装备工程技术有限公司 | 合肥礼品公司-合肥礼品定制-商务礼品定制公司-安徽柏榽商贸有限公司 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 焊接烟尘净化器__焊烟除尘设备_打磨工作台_喷漆废气治理设备 -催化燃烧设备 _天津路博蓝天环保科技有限公司 | 上海公众号开发-公众号代运营公司-做公众号的公司企业服务商-咏熠软件 | 东风体检车厂家_公共卫生体检车_医院体检车_移动体检车-锦沅科贸 | 偏心半球阀-电动偏心半球阀-调流调压阀-旋球阀-上欧阀门有限公司 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 厚壁钢管-厚壁无缝钢管-小口径厚壁钢管-大口径厚壁钢管 - 聊城宽达钢管有限公司 | 吉祥新世纪铝塑板_生产铝塑板厂家_铝塑板生产厂家_临沂市兴达铝塑装饰材料有限公司 | 干式变压器厂_干式变压器厂家_scb11/scb13/scb10/scb14/scb18干式变压器生产厂家-山东科锐变压器有限公司 | 铝机箱_铝外壳加工_铝外壳厂家_CNC散热器加工-惠州市铂源五金制品有限公司 | 卧涛科技有限公司科技项目申报公司|高新技术企业申报|专利申请 | 北京网络营销推广_百度SEO搜索引擎优化公司_网站排名优化_谷歌SEO - 北京卓立海创信息技术有限公司 |