xml で設計されたビデオ ビューを使用しています。このビデオはポートレート モードではフル スクリーンですが、ランドスケープ モードにすると、左揃えになり、フル スクリーンではなく幅と高さが折り返されます。
これらを参照しましたが、これに対する解決策はまだありません。
フルスクリーンの VideoView が中央に配置されていない
誰でもこれに対する答えを知っていますか?
更新:ここに私のxmlがあります
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<VideoView android:id="@+id/youtubewebView"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:layout_alignParentLeft="true" android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true" android:layout_gravity="fill" />
</RelativeLayout>
更新 2:
public class VideoStreamingActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final VideoView videoView = (VideoView)findViewById(R.id.your_video_view);
String videoUrl = "http://www.pocketjourney.com/downloads/pj/video/famous.3gp";
try {
Uri uri = Uri.parse(videoUrl);
videoView.setVideoURI(uri);
videoView.setMediaController(new MediaController(this));
videoView.requestFocus();
//videoView.start();
videoView.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(MediaPlayer arg0, int arg1, int arg2) {
Toast.makeText(getApplicationContext(), "error", Toast.LENGTH_SHORT).show();
return true;
}
});
}catch (Exception e) {
e.printStackTrace();
}
videoView.setOnPreparedListener(new OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
videoView.start();
}
});
}
@Override
protected void onPause() {
Toast.makeText(getApplicationContext(), "pause", Toast.LENGTH_SHORT).show();
super.onPause();
}
@Override
protected void onRestart() {
Toast.makeText(getApplicationContext(), "restart", Toast.LENGTH_SHORT).show();
super.onRestart();
}
@Override
protected void onResume() {
Toast.makeText(getApplicationContext(), "resume", Toast.LENGTH_SHORT).show();
super.onResume();
}
}