在android的布局文件中,如果用户选择开发工具自己创建layout的时候,经常会看到tools属性,那它的作用是什么呢?
其实当选择将tools属性注释掉时,依然不影响程序的运行,但是当选择在AndroidStudio的预览界面语言时,却发生的改变
所以,可想而知,tools是辅助开发者预览的工具。并且,tools所定义的属性在程序编译的过程中会被忽略的。
首先,在使用tools前,必须声明其命名空间:
xmlns:tools="http://schemas.android.com/tools"
tools有以下几个属性:
1.tools:context
声明当前layout所对应的Activity,在预览的时候,可以将Activity的theme应用到layout中
2.tools:context
该属性设置于一个被其他布局<include>的布局的根元素上。这让您可以指向包含此布局的其中一个布局,在预览时这个被包含的布局会带着周围的外部布局被渲染。
3. tools:menu
在预览窗口显示指定的menu。
4.tools:actionBarNavMode
这个属性设置在预览界面中actionbar的显示模式,包括standard,tabs和list。
5.tools:targetApi
忽略api版本所造成的警告。
6.tools:locale
默认情况下res/values/strings.xml中的字符串会执行拼写检查,如果不是英语,会提示拼写错误,通过以下代码来告诉studio本地语言不是英语,就不会有提示了
tools:locale="it"
7.tools:ignore
忽略xml文件中的某些警告除此之外,可以用tools:代替android:来完成只想在预览时显示,而编译时不需要的属性。最简单的一个例子就是,当用户想在预览的时候显示文字,从而调整文本框的各项属性,但在编译之后又不想这个文字出现既可以使用一下代码。
tools:text=“”
代替
android:text=“”