android studio中的纵向到横向视频视图和控制器重启问题

Posted

技术标签:

【中文标题】android studio中的纵向到横向视频视图和控制器重启问题【英文标题】:portrait to landscape Video viewand controller restart problam in android studio 【发布时间】:2019-02-17 11:07:41 【问题描述】:

我有一个videoView,我通过MediaController 控制它 它工作得很好,但是当用户改变手机位置时,纵向旋转到横向模式或(倒置横向到纵向)

它将在第一个视频中重新开始

为了了解更多,我拍了一段视频,请观看 看这个视频https://www.youtube.com/watch?v=AtlzTqtc7zg&feature=youtu.be

我的 xml 布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:orientation="vertical"
    android:layout_
    tools:context=".MainActivity">

    <VideoView
        android:id="@+id/videoView"
        android:layout_
        android:layout_
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />
</LinearLayout>

我的 MainActivity.class

package sirwansoft.safir.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;

public class MainActivity extends AppCompatActivity 
    VideoView videoView;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        videoView = findViewById(R.id.videoView);

        videoView.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.video);

        //control media
        MediaController mediaController = new MediaController(this);
        //set view with controller
        videoView.setMediaController(mediaController);
        //set Controller to view
        mediaController.setAnchorView(videoView);
        videoView.start();

    

【问题讨论】:

旋转时,调用恢复,重新开始。或者您禁止这种情况发生,或者您知道实时播放位置(以 h:m:s 为单位),并且当调用 onresume 时,您跳转到最后记录的位置。 【参考方案1】:

将此代码添加到您的 AndroidManifest 文件中:

<activity
    android:name="YOUR_ACTIVITY_NAME"
    android:configChanges="screenSize|orientation|keyboardHidden"
/>

【讨论】:

以上是关于android studio中的纵向到横向视频视图和控制器重启问题的主要内容,如果未能解决你的问题,请参考以下文章

尽管以纵向视图录制,但使用 mediaRecorder 和表面视图录制的 Android 视频无法在横向视图中播放

Android TV 中的 ExoPlayer 以纵向模式而不是横向模式播放视频

android在纵向活动中录制横向视频

在 iPhone 中将视图从纵向切换到横向,就像 iPhone 中的计算器一样

Android:如何在设置图像视图时检测从图库中选择的图像方向(纵向或横向)?

Android上捕获的视频不会旋转到纵向