如何灰化碎片

时间:2013-05-07 03:01:27

标签: android user-interface interface android-viewpager fragment

我的应用程序有一个包含以下片段的viewpager

1登录2测量3查看数据

用户登录并滑动到度量片段后,我的应用会自动测量一些参数。

由于viewpager可以刷卡。在用户想要在不登录的情况下进行测量的情况下,可以灰显/禁用片段。

感谢。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ImageButton
        android:id="@+id/qt_deleteButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/qt_testtype"
        android:layout_marginLeft="28dp"
        android:layout_marginTop="18dp"
        android:layout_toRightOf="@+id/qt_saveButton"
        android:background="@drawable/border_button"
        android:src="@drawable/delete" />

    <ImageButton
        android:id="@+id/qt_saveButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/qt_deleteButton"
        android:layout_toRightOf="@+id/maintxt_measure"
        android:background="@drawable/border_button"
        android:src="@drawable/save" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:src="@drawable/main_unknown" />

    </FrameLayout>

</RelativeLayout>

我已将我的布局文件编辑到上面,但下面的图层仍然是可点击的。我错过了什么?

由于

1 个答案:

答案 0 :(得分:1)

很抱歉,但不,这应该是这样的:

<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <!-- You may change this to your relative layout, just make sure it is fill_parent -->
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center">

        <!-- Everything related to your main activity goes here -->

    </LinearLayout>

    <LinearLayout
        android:id="@+id/faderLayout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center">

        <ImageView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#E0000000"
            android:onClick="faderClicked" />

    </LinearLayout>

</FrameLayout>

因此,在您的活动中,您将拥有一个功能public void faderClicked(View v),它根本不执行任何操作,您可以通过更改faderLayout的可见性来控制视图。