![](/img/trans.png)
[英]ViewBinding vs Kotlin Android Extensions with synthetic views
[英]Kotlin synthetic property difference for Android views?
Kotlin Android扩展文档说,您基本上可以通过使用import语句来完成findViewById()
的快捷方式。 但是,导入特定视图kotlinx.android.synthetic.main.<layout-file-name>.<view-id>
与从kotlinx.android.synthetic.main.<layout-file-name>.view.<view-id>
导入之间有什么区别? kotlinx.android.synthetic.main.<layout-file-name>.view.<view-id>
? 如果您使用前者,则IDE会向我显示三个相同的视图ID,其中一个分别用于Activity,Dialog和Fragment。 如果执行后者,则仅显示一次视图ID名称。
IDE提示显示可以在以下视图中使用视图引用的类类型:活动,片段,对话框或视图。 键入import语句时,IDE将显示所有可用类型的完成情况。 但是,当您尝试在类内部使用它(不使用import语句)时,IDE会为您显示类正在扩展的特定类型的导入提示。
例如,在一个活动类中,扩展AppCompatActivity
,您将获得导入提示
<view-id> from <layout-file-name> for Activity
但是,如果您的类是从View
或子类扩展而来的,则会得到以下信息:
<view-id> from <layout-file-name> for View
关于为什么有多个选择,对于不同类型,视图缓存的实现可能有所不同。 在这里更多
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.