如何重用Android XML布局并略有不同?

时间:2014-02-27 20:41:59

标签: android android-layout

假设我有Android XML文件home_page.xml

对此home_page.xml我有一些我希望在不同活动中展示的变体,并且我想重复使用相同的主要布局home_page.xml

例如,想象页面上的变体,例如:

  1. 如果用户处于状态A
  2. ,还有2个按钮
  3. 如果用户处于状态B(与状态A相同的活动),还有1个editText字段
  4. 如果用户处于状态C(与状态A相同的活动),则在框架布局中Z轴上的布局会有不同的布局。
  5. 我知道可以通过编程方式隐藏视图并将视图设置为可见。但有没有更好的方法通过xml或其他方式做到这一点?

2 个答案:

答案 0 :(得分:1)

Android建议使用2个标签在不同的屏幕上重复使用布局。

  • 包含

何时使用? 如果您已经知道要重用的布局,请创建一个新的XML文件并定义布局。使用标签重新使用它。

  • 合并

何时使用?

要在一个布局中包含另一个布局时,要消除视图层次结构中的冗余视图组,我们可以使用标记。

有关代码示例和更多详细信息,请参阅此链接 - http://developer.android.com/training/improving-layouts/reusing-layouts.html

答案 1 :(得分:0)

您可以使用Visibility标记隐藏视图。


View v = findViewById(R.Id.my_view);
v.setVisiblity(View.GONE); //etc. 

我以前尝过这样的东西。我的结果好坏参半。如果您正在做某事,例如向用户询问名称,然后显示地址输入或其他内容,这很好。但是如果你发现自己在一个editText中有3个或4个条件,然后在同一个类中找到不同的按钮,你可能只想使用不同的布局。管理起来容易得多。