android官方技术文档翻译——设计时布局属性
本文译自androd官方技术文档《Designtime Layout Attributes》:http://tools.android.com/tips/layout-designtime-attributes。
本文地址:http://blog.csdn.net/maosidiaoxian/article/details/41510581。转载请注明出处。翻译如有错讹,敬请指正。
设计时布局属性
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
...
tools:
命名空间而不是 android:
命名空间: <TextView
android:text="Name:"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
tools:text="John Doe"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
tools:
命名空间而不是android:
命名空间。还要注意的是,你不必只选择其中的一个;您可以设置两个属性,Android
命名空间属性(在运行时使用)和工具属性(在设计时将覆盖运行时属性)。fastScrollAlwaysVisible
属性。但是,您可能仍然希望该属性在运行时是设置的。通过设计时属性,你可以这样解决: <ListView
android:id="@+id/listView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fastScrollAlwaysVisible="true"
tools:fastScrollAlwaysVisible=""/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="First"
tools:visibility="invisible" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Second"
tools:visibility="visible" />
(根据你的需要,你可能会使用 visibility="gone"
来代替 visibility="invisible"
。)
限制
- 目前仅支持覆盖现有的属性。我们可能要定义一些额外的方便的属性,使比如选择在ViewFlipper 显示的子view等等变得简单
- 此时你必须手动编辑您的设计时属性
- 它们不会作为一个选项出现,比如在布局编辑器属性表中。
- 编辑器的代码完成功能不会帮助你进入这些属性;使用它们的最简单的方法是先在Android命名空间中进入,然后进行更换前缀来完成。
- 需要注意的是设计时属性仅支持布局文件本身。你不能在其他地方使用它们——比如在菜单 XML 文件中,字符串资源定义中,等等。
- 在这一点上,设计时属性只能用于框架资源中,而无法在自定义属性使用。
- 查看 https://code.google.com/p/android/issues/detail?id=46186 以获取背景资料、额外请求或注释等信息。
tools:
命名空间的其他属性的详细信息,请参阅 Tools Attributes。郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。