对象可见性

我做了很多搜索,但找不到tools:visibility = "visible"之间的区别tools:visibility = "visible"android:visibility = "visible" ? 哪种情况我必须使用工具或android?

这是简单的解释:

tools:visibility = "visible"用于操作IDE上的视图可见性。它不会实时影响视图。它仅用于Android Studio中的设计目的

android:visibility = "visible"是将在运行时执行的实际代码,它将对您的视图进行更改

参考: http : //tools.android.com/tips/layout-designtime-attributes

工具:属性仅在编辑布局时有助于设计时预览

android:实际上会影响它在实际设备上的显示方式。

您可以在这里和这里find更多信息。

确切的问题应该是

android:...tools:...之间有什么区别tools:...关于布局XML文件”

tools是设计属性之一,可以在开发框架中促进XML的布局创建。此属性用于显示开发框架为实现布局而选择的活动类。 使用“工具:上下文”,Android Studio会自动为预览选择必要的主题

当您在设备中启动apk时, Android会在运行时应用中使用

根据这里

TOOLS值仅用于Android Studio.t中的布局预览

ANDROID值将在app中正常使用。

因此,如果您为主容器设置值:tools:visibility:“gone”android:visibility:“visible”

AS中布局预览中的主容器将消失,但如果您在模拟器/设备上启动应用程序,它将是可见的。

如果您看到设计时布局属性

工具命名空间是Android工具特别认可的命名空间,因此在打包应用程序并且没有运行时开销时,您在tools-namespace中的视图元素上定义的所有属性都将被自动剥离。

因此,如果我们只需要在开发时间内在布局编辑器中测试一些不会影响运行时的东西,我们就可以使用tools命名空间。

例:

   

如果在Android Studio设计器视图中呈现上述布局,则第一个Button将不可见。 但在运行时,它将是可见的。