我目前有以下视频观看
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myVideoView"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<VideoView
android:id="@+id/my_video_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
<RelativeLayout
android:id="@+id/nav_bar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:layout_alignParentBottom="true">
<ImageButton
android:id="@+id/home"
android:layout_width="49dp"
android:layout_height="49dp"
android:background="@drawable/exit_button_outline"
android:src="@mipmap/btn_rdv_close"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:clickable="true"
android:contentDescription="@string/home_btn_desc"/>
<Button
android:id="@+id/closed_captions"
android:clickable="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/closed_caption_button"
android:textStyle="bold"
android:textSize="20dp"
android:textColor="@color/white"
android:background="@drawable/round_button_off"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/home"
android:layout_marginRight="10dp"
android:nextFocusRight="@id/home"
android:nextFocusLeft="@id/video_view"
android:nextFocusDown="@id/video_view"
android:nextFocusUp="@id/video_view"
android:contentDescription="@string/closed_caption_button_content_description" />
</RelativeLayout>
在代码中,我有以下内容:
videoView.addSubtitleSource(
getClosedCaptionsFromFile(closedCaptionsFileName),
MediaFormat.createSubtitleFormat("text/vtt", deviceLang)
)
videoView.setOnInfoListener { mp, what, extra ->
var tracksInfo: Array<TrackInfo> = mp.trackInfo
for ((index, track) in tracksInfo.withIndex()) {
if (track.trackType == MEDIA_TRACK_TYPE_SUBTITLE) {
if (closedCaptions) {
mp.selectTrack(index)
} else {
mp.deselectTrack(index)
}
}
}
true
}
我们使用 VTT 文件作为字幕。问题是如果 VTT 文件中的文本很长,那么文本会与“closed_captions”按钮重叠。
有没有办法设置隐藏式字幕的最大宽度,使其不与字幕按钮重叠?如果标题超过最大宽度,它们应该换行。
Android 似乎没有内置的方法来限制宽度。 但是,由于我使用的是 VTT 文件,因此可以通过更改
size
参数 通过 VTT 语法来完成此操作