它们都链接到相同的TextView.java文件,并且在“设计”选项卡上的外观相同。问题是,什么时候应该使用短的<TextView ... />,什么时候使用长的<android.widget.TextView />
例如,我可以使用<ConstraintLayout>而不是<android.support.constraint.ConstraintLayout> (两者都链接到相同的ConstraintLayout.class,但在设计选项卡上看起来不同),以及如何知道如何使用android reference中的小部件和其他“组件”
发布于 2019-06-24 16:47:17
当涉及到在Android框架的android.view和android.widget包中找到的默认小部件时,您可以省略包名称,因为它是隐式搜索的。
由于ConstraintLayout不是默认小部件,因此不能省略包名。
除了默认的小部件包之外,AndroidX还替换了解析实际类的膨胀器组件,因此<TextView>实际上解析为AppCompatTextView,所以最好不要使用<android.widget.TextView>这样的类名。
发布于 2019-06-24 16:49:22
<TextView />和<android.widget.TextView />是相同的。您可以互换使用它,因为它们是Android基本组件的一部分。然而,在ConstraintLayout的情况下,它是作为您添加到应用程序中的build.gradle文件的支持库的一部分。要访问来自该包的类,您需要完全告诉xml您想要来自该特定包的ConstraintLayout。
发布于 2019-06-24 17:02:47
问题是什么时候应该使用短的
<TextView ... />,什么时候使用长的<android.widget.TextView />
这两者是相同的东西,你可以使用任何一个,更好地使用<TextView ... />,因为大多数开发人员都在使用它,而且它编写的代码更少。
例如,我可以使用
代替
<android.support.constraint.ConstraintLayout>吗?
不,你不能,它在安卓系统中不是默认的,你必须使用一个单独的支持库来使用implementation 'com.android.support.constraint:constraint-layout:1.1.3'
我如何知道如何使用安卓参考中的小部件和其他“组件”
任何与package、android.widget.xxxx或android.view.xxxx相关的东西都可以直接使用xxxx,而其他人则需要在布局中使用完整的软件包名称。
https://stackoverflow.com/questions/56732789
复制相似问题