将mediacontroller绑定到特定视图

时间:2018-08-08 06:34:56

标签: android scroll mediacontroller

我在活动中有以下意见:

<ScrollView
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:layout_width="match_parent"
android:layout_height="match_parent">

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

<TextView
    android:id="@+id/description"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:textSize="20sp"/>

<View
    android:id="@+id/view"
    android:layout_width="match_parent"
    android:layout_height="40dp" />
</LinearLayout>
</ScrollView>

此活动有很多文本,因此可以滚动。我试图将view设置为mediacontroller的锚点,但mediacontroller始终位于屏幕底部(即使在滚动时)。

View view = findViewById(R.id.view);
controller.setAnchorView(view);

我的问题是如何将mediacontroller绑定到view,以便它可以与view滚动。

1 个答案:

答案 0 :(得分:1)

您可以使用videoview来代替使用view。您可以将媒体控制器添加到videoview。另外,它还将使用scrollview滚动。

使用下面的代码即可。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:focusableInTouchMode="true"
        android:focusable="true"
        android:descendantFocusability="blocksDescendants">

        <TextView
            android:id="@+id/description"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:text="@string/xyzString"
            android:textSize="20sp" />

        <VideoView
            android:id="@+id/view"
            android:layout_width="match_parent"
            android:layout_height="250dp"
            android:focusable="true"/>
    </LinearLayout>
</ScrollView>