Kotlin Anko 使用相对布局 RelativeLayout
16lz
2021-01-26
转载文章,出处: http://www.cnblogs.com/sunshine-anycall/p/5300305.html
Jetbrains 给 Android 带来的不仅是 Kotlin,还有 Anko。从 Anko 的官方说明来看这是一个雄心勃勃的要代替 XML 写 Layout 的新的开发方式。Anko 最重要的一点是引入了 DSL(Domain Specific Language)的方式开发 Android 界面布局。当然,本质是代码实现布局。不过使用 Anko 完全不用经历 Java 纯代码写 Android 的痛苦。因为本身是来自 Kotlin 的,所以自然的使用这种方式开发就具有了:
- 类型安全,不再需要那么多的
findViewById()
之后的类型转换。 - null 安全,Kotlin 里,如果一个变量用?表示为可空,并且使用?之后再调用的时候,即使变量为空也不会引发异常。
- 无需设备解析 XML,因为 Anko 本质是代码实现的界面和布局,所以省去了这些麻烦。
- 代码复用,可以通过继承
AnkoComponent
的方式实现代码复用。XML布局是每一个Activity,每一个View各自专属一个,代码复用比较少。
来一个列子看一下。为了不太墨迹,一些不必要的xml声明此处略去。
relativeLayout { val textView = textView("Sample text view") { textSize = 25f }.lparams { width = matchParent alignParentTop() } button("Sample button").lparams { width = matchParent // 关键代码 below(textView) } }
更多相关文章
- Android异步更新UI的方式之使用AsyncTask异步任务
- Android培训班(26)
- 用android studio写一个简单并且bug奇多的计算器
- android alertdialog布局 dialog布局
- Android(安卓)View体系(三)--实现 View 的滑动七种方式
- android播放网络或者本地视频(截取某帧做封面)VideoView原生控件
- 浅谈Android五大布局(二)——RelativeLayout和TableLayout
- 笔记6
- Android邪门歪道