我不确定你能做到这一点,因为你打开的第三方应用程序来播放你的视频,可能是该播放器没有提供你的控制来处理你的代码的方向。
您可以通过下面的代码
实现你的结果中创建一个布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frameLayoutRoot"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<VideoView
android:id="@+id/surfaceViewFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center">
</VideoView>
</RelativeLayout>
现在创建一个新的活动/ playeractivity和setcontent视图中设置上述布局
//In OnCreate
VideoView videoView = (VideoView)findViewById(R.id.surfaceViewFrame);
videoView.setVideoURI(Uri.parse(yoururl/local/server));
videoView.start();
progressBarWait.setVisibility(View.VISIBLE);
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(final MediaPlayer mp) {
mp.start();
mp.setOnVideoSizeChangedListener(new MediaPlayer.OnVideoSizeChangedListener() {
@Override
public void onVideoSizeChanged(MediaPlayer mediaPlayer, int i, int i2) {
// Log.e(TAG, "Changed");
progressBarWait.setVisibility(View.GONE);
mp.start();
}
});
}
});
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
finish();
}
});
而且在Menifest.xml会以您的方向删除您的活动
<activity android:name=".YourPlayerActivity"
android:screenOrientation="portrait/landscape"/>
你有'onConfigurationChanged()'的东西吗? – Apurva 2015-03-03 07:36:29
是的,启动特定意图的活动处于肖像模式。 – user3819810 2015-03-03 07:40:16
不确定,但您应该为横向模式创建另一个xml,而在方向变为横向时将使用它。 – Apurva 2015-03-03 07:44:16