Как получить пользовательский вид списка прокрутки поверх воспроизводимого видео (приложение android)? - PullRequest
0 голосов
/ 05 марта 2020

Я хочу создать что-то похожее на мою картинку. Где у меня есть список прокрутки в верхней части воспроизводимого видео и другой вид изображения сбоку. Моя проблема в том, что мне нужно, чтобы список отображался в поле enter image description here пользовательской формы. Как на этом рисунке:

Я пытался использовать нарисованный вектор или фигуру XML, но не достиг желаемого результата. Я все еще не могу сделать ту границу моего списка прокрутки, где углы обрезаны и прозрачные, чтобы я мог посмотрите видео, играющее за этими углами. 1. Думаю, мне нужно переопределить метод draw. Но не уверен. Какой холст это будет? 2. Можно поместить вид видео (видео) поверх списка прокрутки и сделать мою форму в этом виде прозрачной. Но не уверен, если это возможно. Я пытался сделать это раньше, но кажется, что это просто замаскировало мою заданную форму, так что это просто еще один маскирующий слой поверх видео. Но мне нужно, чтобы этот прокручиваемый список изображений был виден в моей пользовательской форме.

Вот мой основной файл XML, чтобы вы могли видеть, что в нем. Пожалуйста, дайте мне знать, если вы знаете, как достичь желаемого результата.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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/mainLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/holo_blue_bright"
android:orientation="vertical"
tools:context=".MainActivity">

    <LinearLayout
        android:id="@+id/scrolLayout"
        android:layout_width="465dp"
        android:layout_height="296dp"
        android:layout_below="@id/scrolLayout"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_marginEnd="200dp"
        android:background="@drawable/round_border"
        android:orientation="vertical">

        <ScrollView
            android:id="@+id/counterT"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/round_border"
            android:scrollbarSize="0dp">

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/linearLayout"
                android:layout_width="300dp"
                android:layout_height="200dp"
                android:background="@drawable/round_border"
                android:orientation="vertical">

                <ImageView
                    android:id="@+id/imV"
                    android:layout_width="400dp"
                    android:layout_height="200dp"
                    android:background="@drawable/ic_android_black_24dp"
                    android:contentDescription="@string/expfood60_300_1500"
                    app:layout_constraintStart_toStartOf="@id/linearLayout"
                    app:layout_constraintTop_toTopOf="@id/linearLayout" />

                <ImageView
                    android:id="@+id/imV1"
                    android:layout_width="600dp"
                    android:layout_height="300dp"
                    android:clickable="true"
                    android:focusableInTouchMode="true"
                    android:src="@drawable/b0"
                    app:layout_constraintStart_toStartOf="@id/linearLayout"
                    app:layout_constraintTop_toBottomOf="@id/imV" />

                <ImageView
                    android:id="@+id/imV2"
                    android:layout_width="600dp"
                    android:layout_height="300dp"
                    android:clickable="true"
                    android:focusableInTouchMode="true"
                    android:src="@drawable/b0"
                    app:layout_constraintStart_toStartOf="@id/linearLayout"
                    app:layout_constraintTop_toBottomOf="@id/imV1" />

                <ImageView
                    android:id="@+id/imV3"
                    android:layout_width="600dp"
                    android:layout_height="300dp"
                    android:clickable="true"
                    android:focusableInTouchMode="true"
                    android:src="@drawable/b0"
                    app:layout_constraintStart_toStartOf="@id/linearLayout"
                    app:layout_constraintTop_toBottomOf="@id/imV2" />

            </androidx.constraintlayout.widget.ConstraintLayout>
        </ScrollView>
        <!-- Everything you want to scroll goes here -->
    </LinearLayout>
 </RelativeLayout>
...