如何处理替换视图android

时间:2013-01-14 09:01:23

标签: android listview android-menu

我有一个MainActivity类,扩展了SlidingMenu

当用户点击某个项目的滑动菜单时,我想重新加载View的{​​{1}}(不同的布局和内容)。

在大多数情况下,新的MainActivity将包含View个海关单元。

ListView内创建MyListViewActivity时,是否可以执行此操作?或者有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

最简单的方法(一切取决于你的实现)只是在按钮点击时使用setContentView(R.layout.new_layout),这会使同一活动中的其他布局膨胀,取代旧布局。但是请注意,所有菜单/操作栏仍然会膨胀,并且您不会引用旧布局上存在的任何小部件。

如果您想在主要版面中只显示一小部分,则可以在xml中使用以下内容:

<ListView
    android:id="@+id/small_layout_1"
    android:visibility="visible"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

 <LinearLayout
    android:id="@+id/small_layout_2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" 
    android:visibility="gone" />

然后在按钮上按下你找到对small_layout_1的引用,使visibility = off,找到small_layout_2并使visibility = visible,这将实现我认为你正在寻找的相同行为