When zoom the video,controller of playerview is hide
I have a custom exoplayback control view layout for my playerview. I use ZoomableExoPlayerView class. When I zoom video linear_layout_play_pause and linear_layout_bottom hide. This is my custom control view:
` <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_black_gradient" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/root_layout"> <android.support.constraint.ConstraintLayout android:id="@+id/constraint_layout_options" android:layout_width="match_parent" android:layout_height="36dp" android:padding="10dp" app:layout_constraintBottom_toTopOf="@+id/linear_layout_play_pause" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.115">
<TextView
android:id="@+id/exo_speed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:scaleType="fitCenter"
android:text="1.0X"
android:textColor="#FFF"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="ContentDescription" />
</android.support.constraint.ConstraintLayout>
<LinearLayout android:id="@+id/linear_layout_play_pause" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:orientation="horizontal" android:paddingTop="4dp" android:visibility="visible" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent">
<!--<TextView-->
<!--android:id="@+id/text_minus_10_seconds"-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:padding="14dp"-->
<!--android:text="@string/minus_10"-->
<!--android:textSize="18sp"-->
<!--android:textColor="@color/colorWhite" />-->
<ImageButton
android:id="@id/exo_prev"
style="@style/ExoMediaButton.Previous"
tools:ignore="ContentDescription" />
<ImageButton
android:id="@id/exo_rew"
style="@style/ExoMediaButton.Rewind" />
<ImageButton
android:id="@id/exo_play"
style="@style/ExoMediaButton.Play"
tools:ignore="ContentDescription" />
<ImageButton
android:id="@id/exo_pause"
style="@style/ExoMediaButton.Pause"
tools:ignore="ContentDescription" />
<ImageButton
android:id="@id/exo_ffwd"
style="@style/ExoMediaButton.FastForward" />
<ImageButton
android:id="@id/exo_next"
style="@style/ExoMediaButton.Next"
tools:ignore="ContentDescription" />
<!--<TextView-->
<!--android:id="@+id/text_plus_10_seconds"-->
<!--android:layout_width="wrap_content"-->
<!--android:layout_height="wrap_content"-->
<!--android:padding="14dp"-->
<!--android:text="@string/plus_10"-->
<!--android:textSize="18sp"-->
<!--android:textColor="@color/colorWhite" />-->
<LinearLayout android:id="@+id/linear_layout_bottom" android:layout_width="match_parent" android:layout_height="wrap_content" android:layoutDirection="ltr" android:orientation="vertical" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/linear_layout_play_pause" app:layout_constraintVertical_bias="1.0">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:id="@id/exo_position"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:textColor="#FFBEBEBE"
android:textSize="14sp"
android:textStyle="bold" />
<com.google.android.exoplayer2.ui.DefaultTimeBar
android:id="@id/exo_progress"
android:layout_width="0dp"
android:layout_height="26dp"
android:layout_weight="1"
app:played_color="@color/colorPrimary" />
<TextView
android:id="@id/exo_duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:textColor="#FFBEBEBE"
android:textSize="14sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/exo_fullscreen_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:src="@drawable/ic_fullscreen_expand"
tools:ignore="ContentDescription" />
</LinearLayout>
</android.support.constraint.ConstraintLayout>
I have same issue. I think the gesture is intercepted by ZoomableTextureView.
Sorry for the late answer. Indeed handling exoplayer controls out-of-the-box is non-existant. I would recommend to set controllerHideOnTouch value to false inside ZoomableExoPlayerView(this will make sure the controls are never hidden). But now you would have to manually handle it. My advice: add another touchListener above the ZoomableTextureView just for this