如何以编程方式更改布局的可见性

新手上路,请多包涵

有一种方法可以更改 XML 中 View 的可见性,但是如何以编程方式更改 XML 中定义的布局的可见性?如何获取布局对象?

 <LinearLayout
    android:id="@+id/contacts_type"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:visibility="gone">
</LinearLayout>

原文由 Dariusz Bacinski 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 352
2 个回答

看看 View.setVisibility(View.GONE / View.VISIBLE / View.INVISIBLE)

API 文档

public void setVisibility(int visibility)

自:API 级别 1

设置此视图的启用状态。

相关 XML 属性:android:visibility

参数:

visibility VISIBLE、INVISIBLE 或 GONE 之一。

请注意, LinearLayoutViewGroup 反过来又是 View 。也就是说,您可以很好地调用例如 myLinearLayout.setVisibility(View.VISIBLE)

这是有道理的。如果您对 AWT/Swing 有任何经验,您会从 ContainerComponent 之间的关系中认出它。 (A Container Component 。)

原文由 aioobe 发布,翻译遵循 CC BY-SA 2.5 许可协议

这是一种程序化方法:

  view.setVisibility(View.GONE); //For GONE
 view.setVisibility(View.INVISIBLE); //For INVISIBLE
 view.setVisibility(View.VISIBLE); //For VISIBLE

原文由 Hanisha 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题