2019/03/27CoordinatorLayout的使用

2019-06-16  本文已影响0人  Yangxy_Lazy

一、CoordinatorLayout

二、AppBarLayout

三、CollapsingToolbarLayout

四、注意事项:

五、项目中使用的CoordinatorLayout

//布局文件,由于bar存在阴影,所以暂时把ViewPager写到上面了
<androidx.coordinatorlayout.widget.CoordinatorLayout
        android:id="@+id/coordinator"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar">

        <androidx.viewpager.widget.ViewPager
            android:id="@+id/vp_study_pager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="fill_vertical"
            android:layout_marginTop="-12dp"
            android:background="@color/white"
            app:layout_behavior="@string/appbar_scrolling_view_behavior" />

        <com.google.android.material.appbar.AppBarLayout
            android:id="@+id/app_bar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/transparent"
            android:orientation="vertical"
            app:elevation="0dp">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/white"
                android:orientation="vertical"
                android:paddingStart="@dimen/dimen15"
                android:paddingEnd="@dimen/dimen15"
                app:layout_scrollFlags="scroll|exitUntilCollapsed">

                <TextView
                    android:id="@+id/tv_subject_name"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/dimen15"
                    android:textColor="@color/color_value_515151"
                    android:textSize="@dimen/dimen_size_19"
                    android:textStyle="bold"
                    tools:text="思想道德修养与法律基础" />

                <RelativeLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/dimen15"
                    android:background="@drawable/study_report_bg"
                    android:paddingStart="@dimen/dimen20"
                    android:paddingTop="@dimen/dimen15"
                    android:paddingEnd="@dimen/dimen20"
                    android:paddingBottom="@dimen/dimen15">

                    <TextView
                        android:id="@+id/tv_prediect"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="@string/knowledge_node_score"
                        android:textColor="@color/white"
                        android:textSize="@dimen/dimen_size_17" />

                    <TextView
                        android:id="@+id/tv_report_score"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@id/tv_prediect"
                        android:layout_marginTop="@dimen/dimen2"
                        android:textColor="@color/white"
                        android:textSize="50sp"
                        tools:text="80" />

                    <TextView
                        android:id="@+id/tv_tip"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@id/tv_report_score"
                        android:textColor="@color/white"
                        android:textSize="@dimen/dimen_size_13"
                        tools:text="您已经超越了52%的学员" />

                    <TextView
                        android:id="@+id/btn_go_quick_score"
                        android:layout_width="100dp"
                        android:layout_height="@dimen/dimen37"
                        android:layout_alignBottom="@+id/tv_tip"
                        android:layout_alignParentEnd="true"
                        android:background="@drawable/btn_improve_score"
                        android:gravity="center"
                        android:text="@string/fast_improve_prediect"
                        android:textColor="@color/color_value_ff7767" />
                </RelativeLayout>
            </LinearLayout>

            <com.google.android.material.tabs.TabLayout
                android:id="@+id/tab_layout"
                android:layout_width="match_parent"
                android:layout_height="66dp"
                android:background="@drawable/study_tab_list_bg"
                android:paddingBottom="@dimen/dimen12"
                app:tabBackground="@color/transparent"
                app:tabIndicatorHeight="0dp"
                app:tabMode="fixed"
                app:tabRippleColor="@color/transparent" />
        </com.google.android.material.appbar.AppBarLayout>

    </androidx.coordinatorlayout.widget.CoordinatorLayout>
    
    //对于appBar的滑动监听
      app_bar.addOnOffsetChangedListener(AppBarLayout.OnOffsetChangedListener { _, p1 ->
            if (p1 < -Utils.dip2px(this, 34f)) {
                setToolBarTitle(subjectName)
            } else {
                setToolBarTitle("学习报告")
            }
        })
上一篇 下一篇

猜你喜欢

热点阅读