涟漪效应需要容器观点?

时间:2018-02-27 03:38:18

标签: android android-layout

出于多种原因,我需要在我的应用中为提示按钮提供自定义ImageButton。我的应用程序中有一个简单的布局,其中包括以下内容:

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

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <FrameLayout
        android:id="@+id/up_container"
        android:background="@android:color/transparent"
        android:layout_width="match_parent"
        android:layout_height="?actionBarSize">

        <ImageButton
            android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
            android:id="@+id/action_up"
            android:layout_width="56dp"
            android:layout_height="?actionBarSize"
            android:background="?selectableItemBackgroundBorderless"
            android:contentDescription="@string/up"
            android:src="@drawable/ic_arrow_back" />
    </FrameLayout>
</FrameLayout>

我注意到我没有在ImageButton上获得涟漪效果,除非我将其放入另一个FrameLayout,即up_container

我的问题是:为什么需要额外的FrameLayout才能产生连锁反应?这似乎是多余的。如果我取出up_container并使向上按钮成为我的根FrameLayout的直接子项,则不会发生涟漪效应。

对此的任何想法都将非常感激:)

0 个答案:

没有答案