首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏DevTips

    ViewBinding 视图绑定

    绑定类中会为所有具有 ID 视图生成对应的引用。 使用 视图绑定功能可以按模块启用。在模块的 build.gradle 文件中添加如下配置。 :viewBindingIgnore="true"> </LinearLayout> 为模块启用视图绑定功能后,我们创建的 XML 布局文件会生成一个绑定类。 在 Activity 中使用视图绑定 在 Activity使用,需要在 onCreate() 方法中执行如下步骤: 1. 调用绑定类的 inflate() 方法。该方法会生成该绑定类的实例。 2. 通过调用上述步骤生成的 Binding类实例的 getRoot() 方法获取根视图的引用。 3. 调用 setContentView() 方法,将根视图与Activity 绑定。 调用绑定类的 inflate() 方法。该方法会生成该绑定类的实例。 2. 通过调用上述步骤生成的 Binding类实例的 getRoot() 方法获取根视图的引用。 3.

    80940编辑于 2023-01-16
  • 来自专栏韩曙亮的移动开发专栏

    【JetPack】为现有 Android 项目配置视图绑定 ( ViewBinding ) 模块 ( 视图绑定不影响传统布局操作 | 视图绑定类关联 Activity | 视图绑定类本质 )

    视图绑定模块默认为全部布局生成绑定类 ; 视图绑定 ( ViewBinding ) 模块一旦启用 , 应用的全部布局都会默认自动生成一个视图绑定类 , 如果生成了视图绑定模块 , 是否对于已经使用的 findViewById 或者 @BindView @BindViews 代码是否有影响 ; 2 . ( 工作量较大 ) 2 . 先说下结论 : 视图绑定 只是为我们额外生成了一种新的操作布局和组件的方式 , 不会对之前已经写好的代码产生影响 ; 2 . 视图绑定类分析 // 下面的视图绑定类操作是无效的 //获取视图绑定类 , 但是此视图绑定类没有关联该界面 // 关联的方式是 setContentView

    1.5K10编辑于 2023-03-27
  • 来自专栏zinyan

    Android 视图绑定 ViewBinding

    一个叫做视图绑定(ViewBinding),而另外一个叫做数据绑定(DataBinding)。 1. 总结 与使用 findViewById 相比,视图绑定具有的优点: Null 安全:由于视图绑定会创建对视图的直接引用,因此不存在因视图 ID 无效而引发 Null 指针异常的风险。 此外,如果视图仅出现在布局的某些配置中,则绑定类中包含其引用的字段会使用 @Nullable 标记。 类型安全:每个绑定类中的字段均具有与它们在 XML 文件中引用的视图相匹配的类型。 而相较于DataBinding 的优势在于: 更快的编译速度:视图绑定不需要处理注释,因此编译时间更短。 易于使用:视图绑定不需要特别标记的 XML 布局文件,因此在应用中采用速度更快。 在模块中启用视图绑定后,它会自动应用于该模块的所有布局。 而DataBinding 的优势就在于:布局和数据的双向绑定了。 所以其实我们可以在项目之中同时使用视图绑定和数据绑定

    2.2K10编辑于 2022-12-07
  • 来自专栏Android 开发者

    使用视图绑定替代 findViewById

    为了解决这些问题,视图绑定把 findViewById 替换成了更加简洁和安全的实现。 视图绑定有下面两个特性: 类型安全: 因为视图绑定总是会基于布局中的视图生成类型正确的属性。 在 ActivityAwesomeBinding.java 中,视图绑定生成了一个只有一个参数的 inflate 方法,该方法通过将 parent 设定为空值来指定当前视图不会绑定到父视图中;视图绑定也暴露了一个有三个参数的 结合数据绑定来使用视图绑定 视图绑定只是 findViewById 的取代方案,如果您希望在 XML 中自动绑定视图,可以使用数据绑定库。数据绑定视图绑定可以生成同样的组件,它们可以同时工作。 在两者都被开启时,使用 标签的布局会由数据绑定来生成绑定对象;而其余的布局则由视图绑定生成绑定对象。 您可以在同一 Module 中同时使用数据绑定视图绑定。 对于大多数应用来说,我们推荐尝试使用视图绑定来替代这两个库,因为视图绑定可以提供更加安全和准确的视图映射方式。

    2.3K30发布于 2020-03-13
  • 来自专栏韩曙亮的移动开发专栏

    【JetPack】ViewBinding 视图绑定组件 ( 启用模块 | 视图绑定定制 | 绑定类名称生成规则 | 绑定类字段生成规则 | 绑定类获取根视图 | 绑定类获取布局组件 )

    Android Studio 最低版本要求 : 使用视图绑定组件 , 需要将 Android Studio 开发环境升级到 3.6 Canary 11 及以上版本 ; 2 . 视图绑定布局文件 ---- 下面的绑定类定义了三个 TextView , 前两个定义了 id 分别是 text_view 和 text_view2 , 最后一个没有定义 id ; 该布局作为视图绑定的示例布局 text_view 和 text_view2 两个 TextView 组 * */ private ActivityMainBinding binding; /* 获取 视图绑定 对象 设置视图绑定后的布局 ---- 1 . 获取根视图 : ActivityMainBinding 绑定类自带 getRoot() 方法 , 可以直接获取到 布局文件的 根视图 ; 2 . 2 已经设置成功 , 说明视图绑定操作完成 ; XIII .

    2K10编辑于 2023-03-27
  • 来自专栏Android安卓进阶

    Android:Jetpack之视图绑定——ViewBinding

    Data Binding→数据绑定,可使用声明式将布局中的界面组件绑定到应用中的数据源; Lifecycles→生命周期感知,可感知和响应Activity和Fragment的生命周期状态的变化; LiveData 本节开始折腾,先带来一个超简单的 → ViewBinding(视图绑定)。 注:使用ViewBinding,AGP版本需 >= 3.6 接着介绍下基本用法,部分内容搬运自官方文档: 《视图绑定》 ① 启用ViewBinding 需要启用视图绑定的Module,在其build.gradle (layoutInflater) // 2、获得对根视图的引用 val view = binding.root // 3、让根视图称为屏幕上的活动视图 binding.root) { var tvItem: TextView = binding.tvItem } } ⑦ 自定义ViewGroup ViewGroup子类才能使用视图绑定

    3.1K30编辑于 2022-04-18
  • 来自专栏Code

    Android视图绑定ViewBinding的使用

    前言 后台读者留言:能否写一篇视图绑定ViewBinding相关的内容? 首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。 直到Android大神 Jake Wharton开源了Butter Knife框架,通过Bind方式绑定获取ViewId。 目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。 2.使用流程 在要使用ViewBinding的 module 的gradle文件中开启ViewBinding android { …………… viewBinding { 因为在绑定类中已经全部定义好了,开发者直接使用就可以。 ----

    3.4K10发布于 2021-09-07
  • 来自专栏Code

    Android视图绑定ViewBinding的使用

    前言 后台读者留言:能否写一篇视图绑定ViewBinding相关的内容? 首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。 直到Android大神 Jake Wharton开源了Butter Knife框架,通过Bind方式绑定获取ViewId。 目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。 2.使用流程 在要使用ViewBinding的 module 的gradle文件中开启ViewBinding android { …………… viewBinding { 在gradle文件中开启ViewBinding功能后,编译器就会为此模块下的每个布局文件都产生一个对应的绑定类。

    3.6K20发布于 2020-03-20
  • 来自专栏Android安卓进阶

    Android:Jetpack之视图绑定——ViewBinding

    Data Binding→数据绑定,可使用声明式将布局中的界面组件绑定到应用中的数据源; Lifecycles→生命周期感知,可感知和响应Activity和Fragment的生命周期状态的变化; LiveData 本节开始折腾,先带来一个超简单的 → ViewBinding(视图绑定)。 注:使用ViewBinding,AGP版本需 >= 3.6 接着介绍下基本用法,部分内容搬运自官方文档: 《视图绑定》 ① 启用ViewBinding 需要启用视图绑定的Module,在其build.gradle (layoutInflater) // 2、获得对根视图的引用 val view = binding.root // 3、让根视图称为屏幕上的活动视图 binding.root) { var tvItem: TextView = binding.tvItem } } ⑦ 自定义ViewGroup ViewGroup子类才能使用视图绑定

    1.6K30编辑于 2022-04-18
  • 来自专栏高端IT

    视图模板引擎——Vue【双向绑定】原理剖析

    MVC分别是 Model(模型)、View(视图)、Controller(控制器)三个模块。 View(视图层)最主要完成前端的数据展示,Controller(控制层)是对数据的接收和触发事件的接收和传递,Model(模型层)则是对数据的储存和处理,再传递给视图层相应或者展示。 2、大量的DOM 操作使页面渲染性能降低,加载速度变慢,影响用户体验。 MVP是Model(模型)、View(视图)、Presenter(表示器)组成。 MVVM模式的优点在于当view和viewmodel的双向绑定,当数据改变后不需要改修改DOM结构。

    74730编辑于 2022-06-02
  • 来自专栏算法与编程之美

    微信小程序|视图数据的绑定

    解决方案 视图的数据绑定需要让这个视图的每一个部分与对应的数据做一个映射。建立这种映射了之后开发者就只需要关注如何获取到这个数据,然后进行更新。 这样在更新的时候我们只需要对映射的内容进行修改,视图就会自动的更新。 绑定数据输出到视图中进行显示 将定义的变量渲染输出显示是通过{{ }}进项数据绑定的 {{count+score}}是进行简单数据的运算 {{(score>=60)?" 图2 结语 将视图的每一部分与对应的数据做一个映射,定义内部状态变量将数据与变量绑定,然后到wxml中用双大括号进行渲染输出。 END 实习编辑 | 王文星 责 编 | 9 5 0 where2go 团队 ----

    1.4K30发布于 2020-09-08
  • 来自专栏韩曙亮的移动开发专栏

    【Jetpack】DataBinding 架构组件 ⑤ ( 数据模型与视图双向绑定 | BaseObservable 实现双向绑定 | ObservableField 实现双向绑定 )

    一、数据模型 Model 与视图 View 双向绑定 ---- 1、数据模型 Model 与视图 View 的单向绑定 在之前的博客中 , 将 数据模型 Model 中的 指定 Field 字段 绑定到 View 视图中的组件 , 在实际案例中 , 将 Student 类中的 String 类型的 name 字段绑定到了 布局文件中的 TextView 组件中 , 当 Student#name 字段发生了改变 TextView 显示的内容 ; TextView 组件不能发起对数据模型的修改 ; 2、由单向绑定引出双向绑定 如果 绑定的 数据模型 对应的组件是 EditText 文本框 , EditText ( 本博客的核心重点 ) ★ 实现 数据 与 视图 的双向绑定类 , 需要继承 BaseObservable 类 ; class StudentViewModel: BaseObservable { View 双向绑定 ( 本博客的核心重点 ) ★ ---- 示例代码 : ObservableField 实现数据模型 Model 与视图 View 双向绑定 与 BaseObservable 实现数据模型

    2K30编辑于 2023-04-24
  • 来自专栏小明说Java

    Vue3快速入门——v-model视图绑定

    可以方便的 获取 或 设置 表单项数据语法:v-model="变量名这样就可以实现vue中数据跟表单中的双向数据绑定视图改变影响数据,数据变化影响视图接下来通过代码案例,演示视图改变影响数据,数据变化影响视图 "search">搜索</button> {{searchText}}

    <script type="module"> // 步骤2 button用于触发搜索操作,使用v-on:click指令将其点击事件绑定到Vue实例的search方法,实现视图改变影响数据。在span标签,用于显示实时更新的搜索文本。 使用双花括号{{searchText}}将其值与Vue实例的searchText数据属性进行绑定,实现数据变化影响视图最终就是searchText会影响到整个vue app。 这也是后续,实现视图数据重新渲染的关键,可以将绑定数据提交到接口,接口参数最终返回新的的数据。我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

    86610编辑于 2024-04-20
  • 来自专栏卯金刀GG

    【angularjs2】双向绑定

    showUserEntityCommon(index:any):void{ this.UserEntity= this.List[index]; } 2、 html

    账号:
    ngModel" disabled placeholder="账号">
    双向绑定

    57020发布于 2019-07-25
  • 来自专栏韩曙亮的移动开发专栏

    【JetPack】视图绑定 ( ViewBinding ) 各种应用 ( 视图绑定两种方式 | Activity 布局 | 对话框布局 | 自定义组件布局 | RecyclerView 列表布局 )

    视图绑定 ( ViewBinding ) 界面的两种方式 II . Activity 界面中 应用 视图绑定 ( ViewBinding ) III . Dialog 对话框界面中 应用 视图绑定 ( ViewBinding ) IV . 自定义组件 应用 视图绑定 ( ViewBinding ) V . , ViewParent, attachToRoot ) 两种方式 ; ( XxxBinding 是视图绑定类 ) 2 . 获取视图绑定类 binding = ActivityMainBinding.inflate(getLayoutInflater()); // 2 . 获取视图绑定类 DialogBinding binding = DialogBinding.inflate(getLayoutInflater()); // 2 .

    2.6K30编辑于 2023-03-27
  • 来自专栏Swingz

    【vue学习】2.本地应用——内容绑定,事件绑定

    本地应用——内容绑定,事件绑定 v-test 作用: 设置标签的文本值 <body> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js "></script> <h2 id="app-2" v-text="message"> </h2> <script> var app2 = new Vue({ el: '#app-2', data: { message: '我是v-text' } v-on 作用: 为元素绑定事件 <body> <! this.food+="好好吃"; } } }) </script> </body> 注意: 事件名不需要写on 指令可以简写为@ 绑定的方法定义再

    61430发布于 2020-12-18
  • 来自专栏韩曙亮的移动开发专栏

    【JetPack】kotlin-android-extensions 插件 ( 视图绑定简单用法 )

    文章目录 一、动画效果添加对象 二、kotlin-android-extensions 插件使用步骤 1、配置 kotlin-android-extensions 插件 2、导入视图 3、完整布局文件 4、Activity 完整代码示例 一、动画效果添加对象 ---- kotlin-android-extensions 插件 实现了 视图绑定 功能 , 开发过程中 , 可以不用调用如下形式 : ① 视图绑定 : ActivityMainBinding.inflate(getLayoutInflater()).textView kotlin-android-extensions 插件视图绑定在导入 com.android.application' id 'kotlin-android' id 'kotlin-android-extensions' id 'kotlin-kapt' } 2、 导入视图 在 Activity 中导入视图 : import kotlinx.android.synthetic.main.activity_main.* 3、完整布局文件 布局文件 : <?

    1.2K00编辑于 2023-03-28
  • 来自专栏IT架构圈

    「小程序JAVA实战」小程序视图之细说数据绑定(13)

    在前面的小节里面其实对数据绑定都有所了解了,在这次给老铁在好好说下数据绑定,看下它的方方面面是如何实现的。 源码:https://github.com/limingios/wxProgram.git 中的No.8 小程序的数据绑定 JQuery dom 操作 $选择器 微信小程序是通过数据绑定 vue/react .js 中通过data 对象与.wxml的元素绑定{{data}} ->Mustache 表达式语法 Mustache 是一款经典的前端模板引擎,在前后端分离的技术架构下面,前端模板引擎是一种可以被考虑的技术选型 演示绑定 数据绑定使用 Mustache 语法(双大括号)将变量包起来 关键字(需要在双引号之内) true:boolean 类型的 true,代表真值。

    93430发布于 2018-12-21
  • 来自专栏雪胖纸的玩蛇日常

    2.数据绑定、循环语法

    数据绑定与循环语法 <template>

    {{msg}}


    我公司的名字是:{{obj.company}}

    55010发布于 2019-09-25
  • 来自专栏ByConity

    StarRocks 物化视图2 - 查询优化

    Collectors.toSet()); if (extraTables.isEmpty()) { return true; } // 2. queryTables.size(), mvTables.size())); return null; }结论1 foreign_key_constraints 需要约束事实表2 v3.1+2 物化成功率-- 物化视图成功优化 StarRocks支持将物化视图刷新任务的部分中间结果落盘ALTER MATERIALIZED VIEW mv2 SET ('session.enable_spill ALTER MATERIALIZED VIEW mv2 SET ( 'session.query_timeout' = '4000' );3 分区级物化T+1T+1更新:当被关联基表的某个分区中的数据发生变化时 MATERIALIZED_VIEW table[xxx]直接查询异步物化视图 + mv cache-(200)ms在复杂查询情况下,一个查询改写过程有时候时非常复杂的1 我们可以直接查询物化视图2 我们可以物化查询

    48610编辑于 2025-09-15
  • 领券