如何在android开发中隐藏和显示自定义视图?

时间:2014-04-13 15:16:31

标签: java android android-view

我有两个只包含绘图的视图类。我想通过点击'门来将视图类从一个类更改为另一个类。 (在特定坐标上)。

这是我的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <com.example.insidehouse.InsideHouseView
        android:id="@+id/insideHouseView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true" />

    <com.example.insidehouse.BedRoomView
        android:id="@+id/bedRoomView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="false"
        android:layout_centerVertical="false" />

</RelativeLayout>

3 个答案:

答案 0 :(得分:1)

尝试使用ViewSwitcher。 http://developer.android.com/reference/android/widget/ViewSwitcher.html

您可以使用viewswitcher包围您的两个视图,并让Android在视图之间平滑切换。您甚至可以使用动画为用户提供更多视觉效果

答案 1 :(得分:0)

您可以通过将视图设置为VIEW.GONE来隐藏视图。

答案 2 :(得分:0)

在视图中添加onClickListener并使用setVisibility显示/隐藏门/卧室

进入(门的onClickListener):

insideHouseView1.setVisibility(View.GONE);
bedRoomView1.setVisibility(View.VISIBLE);

出门(床门上的onClickListener?):

insideHouseView1.setVisibility(View.VISIBLE);
bedRoomView1.setVisibility(View.GONE);

还有其他视图允许您在视图之间切换,但我从未尝试过.. ViewFlipper也许。