我不確定你能做到這一點,因爲你打開的第三方應用程序來播放你的視頻,可能是該播放器沒有提供你的控制來處理你的代碼的方向。
您可以通過下面的代碼
實現你的結果中創建一個佈局
<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