Android视频全屏

时间:2014-07-11 07:22:27

标签: android android-fragments android-videoview

我正在使用videoview。我写的代码女巫可以播放来自url的视频与asynctask.at每一刻都可以,但我有另一个问题。当我运行我的应用程序视频视图不是全屏。

[我喜欢这个结果1

这是我的来源

public class Layout1 extends Fragment  {




VideoView video;
MediaController media;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);


}

@SuppressWarnings("deprecation")
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {


    View view = inflater.inflate(R.layout.fragment_layout1, null);


    video = (VideoView) view.findViewById(R.id.video_view);


    new BackgroundAsyncTask()
    .execute(Global.yutubeDownloadUrl);











    return view;
}

public class BackgroundAsyncTask extends AsyncTask<String, Uri, Void> {
    Integer track = 0;
    ProgressDialog dialog;

    protected void onPreExecute() {
        dialog = new ProgressDialog(getActivity());
        dialog.setMessage("Loading, Please Wait...");
        dialog.setCancelable(true);
        dialog.show();
    }

    protected void onProgressUpdate(final Uri... uri) {

        try {

            media=new MediaController(getActivity());
            video.setMediaController(media);
            media.setVisibility(View.GONE);
            media.setPrevNextListeners(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    // next button clicked

                }
            }, new View.OnClickListener() {
                @Override
                public void onClick(View v) {


                }
            });
            media.show();

            video.setVideoURI(uri[0]);
            video.requestFocus();
            video.setOnPreparedListener(new OnPreparedListener() {

                public void onPrepared(MediaPlayer arg0) {
                    video.start();
                    dialog.dismiss();
                }
            });


        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (SecurityException e) {

            e.printStackTrace();
        }


    }

    @Override
    protected Void doInBackground(String... params) {
        try {
            Uri uri = Uri.parse(params[0]);

            publishProgress(uri);
        } catch (Exception e) {
            e.printStackTrace();

        }

        return null;
    }


}

和xml代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<VideoView
    android:id="@+id/video_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />

我在做错了什么?如果有人知道解决方案,请帮助我

1 个答案:

答案 0 :(得分:0)

简单的方法是将您的活动主题更改为

 @android:style/Theme.Holo.NoActionBar.Fullscreen 

@android:style/Theme.Black.NoTitleBar.Fullscreen

(只要名称中有全屏,就可以了)。 如果你真的需要将视频视图放在一个片段中,可能会有一些问题,但是当我看到你的代码时,你可以使用一个活动而不是那个片段来设置该活动的主题。

顺便说一下......你不需要使用异步。