我无法点击布局背景上的按钮

时间:2017-07-26 09:14:11

标签: android button webview

我在xml布局中使用webview,我将webview设置为全屏并以编程方式将其设置为透明,并且我在同一布局上还有三个按钮和一个imageview,所有视图都在单帧布局中 按钮不会触发单击事件。 xml是:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">





<!--    <WebView
        android:id="@+id/webview"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:layout_alignParentBottom="true"/>-->

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentBottom="true"
    android:fillViewport="true">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:clickable="true">


        <RelativeLayout
            android:id="@+id/bt_layout"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="150dp"
                android:layout_height="150dp"
                android:src="@drawable/logo_image"
                android:id="@+id/pk_estate_image"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true" />



            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Find Your Dream Home"
                android:id="@+id/bt_find_your_dream_home"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_centerInParent="true"

                android:textColor="@color/colorWhite"
                android:textAlignment="center"
                android:clickable="true"
                android:background="@drawable/backgroud_button"/>




            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Property For Wanted"
                android:layout_marginTop="10dp"
                android:id="@+id/bt_property_for_wanted"
                android:layout_below="@id/bt_find_your_dream_home"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_centerInParent="true"
                android:textColor="@color/colorWhite"
                android:background="@drawable/backgroud_button"/>





            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Submit Your Property"
                android:layout_below="@id/bt_property_for_wanted"
                android:id="@+id/bt_submit_your_prooperty"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_marginTop="10dp"
                android:textColor="@color/colorWhite"
                android:layout_centerInParent="true"
                android:background="@drawable/backgroud_button"/>


        </RelativeLayout>




        <WebView
            android:id="@+id/webview"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />



    </FrameLayout>


</ScrollView>

    </RelativeLayout>

</LinearLayout>

我的网页视图设置为:

  mWebView.setBackgroundColor(Color.TRANSPARENT);

如何使其可点击

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:1)

您最后添加了webview,这使得webview处理所有触摸和点击事件。您需要先在framelayout和其他视图中添加webview。这将使上面的所有视图(z-index)高于webview,并允许他们接收点击。

 <FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clickable="true">

<WebView
    android:id="@+id/webview"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<RelativeLayout
    android:id="@+id/bt_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:src="@drawable/logo_image"
        android:id="@+id/pk_estate_image"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />



    <Button
        android:layout_width="240dp"
        android:layout_height="30dp"
        android:text="Find Your Dream Home"
        android:id="@+id/bt_find_your_dream_home"
        android:textStyle="bold"
        android:textAllCaps="false"
        android:layout_centerInParent="true"

        android:textColor="@color/colorWhite"
        android:textAlignment="center"
        android:clickable="true"
        android:background="@drawable/backgroud_button"/>




    <Button
        android:layout_width="240dp"
        android:layout_height="30dp"
        android:text="Property For Wanted"
        android:layout_marginTop="10dp"
        android:id="@+id/bt_property_for_wanted"
        android:layout_below="@id/bt_find_your_dream_home"
        android:textStyle="bold"
        android:textAllCaps="false"
        android:layout_centerInParent="true"
        android:textColor="@color/colorWhite"
        android:background="@drawable/backgroud_button"/>





    <Button
        android:layout_width="240dp"
        android:layout_height="30dp"
        android:text="Submit Your Property"
        android:layout_below="@id/bt_property_for_wanted"
        android:id="@+id/bt_submit_your_prooperty"
        android:textStyle="bold"
        android:textAllCaps="false"
        android:layout_marginTop="10dp"
        android:textColor="@color/colorWhite"
        android:layout_centerInParent="true"
        android:background="@drawable/backgroud_button"/>


</RelativeLayout>

答案 1 :(得分:0)

只需要在framelayout

中更改视图的顺序
<FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:clickable="true">

<WebView
            android:id="@+id/webview"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
        <RelativeLayout
            android:id="@+id/bt_layout"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="150dp"
                android:layout_height="150dp"
                android:src="@drawable/logo_image"
                android:id="@+id/pk_estate_image"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true" />



            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Find Your Dream Home"
                android:id="@+id/bt_find_your_dream_home"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_centerInParent="true"

                android:textColor="@color/colorWhite"
                android:textAlignment="center"
                android:clickable="true"
                android:background="@drawable/backgroud_button"/>




            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Property For Wanted"
                android:layout_marginTop="10dp"
                android:id="@+id/bt_property_for_wanted"
                android:layout_below="@id/bt_find_your_dream_home"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_centerInParent="true"
                android:textColor="@color/colorWhite"
                android:background="@drawable/backgroud_button"/>





            <Button
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:text="Submit Your Property"
                android:layout_below="@id/bt_property_for_wanted"
                android:id="@+id/bt_submit_your_prooperty"
                android:textStyle="bold"
                android:textAllCaps="false"
                android:layout_marginTop="10dp"
                android:textColor="@color/colorWhite"
                android:layout_centerInParent="true"
                android:background="@drawable/backgroud_button"/>


        </RelativeLayout>


    </FrameLayout>

答案 2 :(得分:0)

改变这个:

<WebView
            android:id="@+id/webview"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

到此:

<WebView
            android:id="@+id/webview"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:clickable="false" />