在滑动选项卡布局上添加按钮

Add button on Sliding Tab Layout

我想在我的选项卡布局上添加一个自定义按钮。此展开按钮将展开我当前的选项卡视图。我已经实现了 google 的滑动选项卡中给出的所有功能。

TabLayout 旁边添加按钮是否有意义?管理它要容易得多(只需一个带 alignParentRight 的按钮和 tabLayout to_leftOf),结果将是相同的。

你可以借助FrameLayout来实现。

<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="280dp"
android:layout_gravity="center"
app:cardElevation="8dp"
card_view:cardCornerRadius="5dp">

<FrameLayout
    android:id="@+id/frame_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

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


        <SlidingTabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="#2D73A9"
            android:elevation="2dp" />

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

    </LinearLayout>

    <FrameLayout
        android:id="@+id/buttonPanel"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_gravity="top|end"
        android:layout_marginEnd="0dp"
        android:layout_marginRight="0dp">

        <Button
            android:id="@+id/expand"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/img_chart_expand"
            android:visibility="gone" />
    </FrameLayout>

</FrameLayout>