layout_recycler_view_item.xml 8.89 KB
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/clRoot"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/black">

    <!--  底部封面  -->
    <ImageView
        android:id="@+id/ivBackgroundRenderingContainer"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toTopOf="@+id/flCommentContainer" />

    <!--  渲染视图  -->
    <FrameLayout
        android:id="@+id/flTextureView"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toTopOf="@+id/flCommentContainer"/>

    <!--  封面  -->
    <FrameLayout
        android:id="@+id/flRenderingContainer"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toTopOf="@+id/flCommentContainer" />

    <!--  全局触摸事件,目的不让阿里 sdk 处理暂停和播放事件  -->
    <FrameLayout
        android:id="@+id/flGlobalTouchContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

    <!--     声音和亮度  (竖屏不需要,横屏展示)-->
    <FrameLayout
        android:id="@+id/flVolumeBrightnessContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!--    横屏触摸,隐藏显示返回栏和进度条 (竖屏不需要,横屏展示)-->
    <FrameLayout
        android:id="@+id/flLandscapeTouchContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:visibility="gone" />

    <!--    顶部和底部加阴影,就不写成 tile 因为没有业务逻辑-->
    <FrameLayout
        android:id="@+id/flTopShadow"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_width="match_parent"
        android:layout_height="@dimen/rmrb_dp98"
        android:background="@drawable/shape_gradient_short_video_describe_dialog_bg_reversal"/>

    <FrameLayout
        android:id="@+id/flToolbarContainer"
        android:layout_width="match_parent"
        android:layout_height="@dimen/rmrb_dp44"
        android:layout_marginTop="@dimen/rmrb_dp42"
        app:layout_constraintTop_toTopOf="parent" />

    <FrameLayout
        android:id="@+id/flPlayStatusContainer"
        android:layout_width="@dimen/rmrb_dp66"
        android:layout_height="@dimen/rmrb_dp66"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent" />

    <FrameLayout
        android:id="@+id/flPictureInPictureContainer"
        android:layout_width="@dimen/rmrb_dp84"
        android:layout_height="@dimen/rmrb_dp28"
        app:layout_constraintTop_toTopOf="@+id/flCommentContainer"
        app:layout_constraintBottom_toBottomOf="@+id/flCommentContainer"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintLeft_toRightOf="@+id/flPlayStatusContainer" />

    <!--  全屏按钮  -->
    <FrameLayout
        android:id="@+id/flFullScreenButtonContainer"
        android:layout_width="@dimen/rmrb_dp24"
        android:layout_height="@dimen/rmrb_dp24"
        android:layout_marginStart="@dimen/rmrb_dp16"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toStartOf="parent" />

    <!--    底部加阴影-->
    <FrameLayout
        android:id="@+id/flBottomShadow"
        android:layout_width="match_parent"
        android:layout_height="@dimen/rmrb_dp290"
        android:background="@drawable/shape_gradient_short_video_describe_dialog_bg"
        app:layout_constraintBottom_toBottomOf="parent"/>

    <FrameLayout
        android:id="@+id/flInteractionContainer"
        android:layout_width="@dimen/rmrb_dp50"
        android:layout_height="wrap_content"
        android:layout_marginEnd="@dimen/rmrb_dp7"
        android:layout_marginBottom="@dimen/rmrb_dp6"
        app:layout_constraintBottom_toTopOf="@+id/flActivityContainer"
        app:layout_constraintRight_toRightOf="parent" />

    <FrameLayout
        android:id="@+id/flAuthorContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="@dimen/rmrb_dp16"
        android:layout_marginEnd="@dimen/rmrb_dp72"
        android:layout_marginBottom="@dimen/rmrb_dp8"
        app:layout_constraintBottom_toTopOf="@+id/flTitleContainer" />

    <FrameLayout
        android:id="@+id/flTitleContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="@dimen/rmrb_dp16"
        android:layout_marginEnd="@dimen/rmrb_dp72"
        android:layout_marginBottom="@dimen/rmrb_dp8"
        app:layout_constraintBottom_toTopOf="@+id/flDescriptionContainer" />

    <FrameLayout
        android:id="@+id/flDescriptionContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="@dimen/rmrb_dp16"
        android:layout_marginEnd="@dimen/rmrb_dp72"
        android:layout_marginBottom="@dimen/rmrb_dp8"
        app:layout_constraintBottom_toTopOf="@+id/flViewDetailsContainer" />

    <FrameLayout
        android:id="@+id/flViewDetailsContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:visibility="gone"
        android:layout_marginStart="@dimen/rmrb_dp16"
        android:layout_marginEnd="@dimen/rmrb_dp72"
        android:layout_marginBottom="@dimen/rmrb_dp10"
        app:layout_constraintBottom_toTopOf="@+id/flActivityContainer" />

    <FrameLayout
        android:id="@+id/flProgressAndTotalProgressContainer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="@dimen/rmrb_dp36"
        app:layout_constraintBottom_toTopOf="@+id/flSeekbarContainer"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent" />

    <FrameLayout
        android:id="@+id/flActivityContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:background="@color/color_ed2800"
        tools:layout_height="@dimen/rmrb_dp40"
        app:layout_constraintBottom_toTopOf="@+id/flSeekbarContainer" />

    <FrameLayout
        android:id="@+id/flSeekbarContainer"
        android:layout_width="match_parent"
        android:layout_height="24dp"
        tools:background="@color/res_color_888888"
        app:layout_constraintBottom_toTopOf="@+id/flCommentContainer" />

    <!--    本来是52dp,因为 seekbar 底下有 10dp 所以借 seekbar底下 10dp -->
    <FrameLayout
        android:id="@+id/flCommentContainer"
        android:layout_width="match_parent"
        android:layout_height="@dimen/rmrb_dp42"
        tools:background="@color/color_ed2800"
        tools:visibility="visible"
        android:visibility="gone"
        app:layout_constraintBottom_toTopOf="@+id/flBottomPlaceholder"
        app:layout_constraintRight_toRightOf="parent" />

    <!--    首页动画需要 toolbar 遮挡 36dp viewpager,一级沉浸式时需要整个视图垫高 36dp-->
    <FrameLayout
        android:id="@+id/flBottomPlaceholder"
        android:layout_width="match_parent"
        android:layout_height="@dimen/rmrb_dp36"
        android:visibility="gone"
        app:layout_constraintBottom_toBottomOf="parent"/>

    <!-- debug 信息   -->
    <FrameLayout
        android:id="@+id/flVideoDebugInfoContainer"
        android:layout_width="@dimen/rmrb_dp200"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/rmrb_dp56"
        android:layout_marginEnd="@dimen/rmrb_dp16"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintRight_toRightOf="parent" />

    <!--查看详情    -->
    <FrameLayout
        android:id="@+id/flTextDetailContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!--  WiFi 提醒tile,z 轴值: 100  -->
    <FrameLayout
        android:id="@+id/flMobileDataContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:elevation="@dimen/rmrb_dp100"/>

    <!--  连续点赞  -->
    <FrameLayout
        android:id="@+id/flLikesContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</androidx.constraintlayout.widget.ConstraintLayout>