Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 试图在片段中使用VideoView时出现NullPointerException_Android_Android Fragments_Android Studio - Fatal编程技术网

Android 试图在片段中使用VideoView时出现NullPointerException

Android 试图在片段中使用VideoView时出现NullPointerException,android,android-fragments,android-studio,Android,Android Fragments,Android Studio,我正在尝试将YouTube视频嵌入我的应用程序,如下所述: 然而,当我访问片段时,我似乎遇到了一个NullPointerException错误,我似乎无法找到原因 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.VideoView.setVideoURI(android.net.Uri)' on a null object reference 片段的代码如下所示 impo

我正在尝试将YouTube视频嵌入我的应用程序,如下所述:

然而,当我访问片段时,我似乎遇到了一个NullPointerException错误,我似乎无法找到原因

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.VideoView.setVideoURI(android.net.Uri)' on a null object reference
片段的代码如下所示

import android.widget.MediaController;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.VideoView;


public class VideosFragment extends Fragment {


public VideosFragment() {
    // Required empty public constructor
}


@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_compare, container, false);
    VideoView videoView;
    videoView = (VideoView)view.findViewById(R.id.videoView);
    MediaController mediaController;
    mediaController = new MediaController(view.getContext());
    mediaController.setAnchorView(videoView);
    Uri uri= Uri.parse("rtsp://r7---sn-4g57kue6.googlevideo.com/Ck0LENy73wIaRAmk3cJBg-iaXhMYDSANFC3u0pRWMOCoAUIJbXYtZ29vZ2xlSARSBXdhdGNoYIaluaTkzciOVooBCzVxRjNraG5XcXdnDA==/D693A8E7577C3A29E60C292B42C9C87D7C25A565.762A63DC4CA0A028DA83256C6A79E5F160CBEDA3/yt6/1/video.3gp");
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(uri);
    videoView.requestFocus();
    videoView.start();



    return inflater.inflate(R.layout.fragment_videos, container, false);
}
}

以下是布局文件:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.[left out for security].VideosFragment"
android:background="?android:attr/colorBackground">

<!-- TODO: Update blank fragment layout -->

<VideoView
    android:id="@+id/videoView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true" />


谢谢你的帮助

您正在调用
findviewbyd(R.id.videoView)在没有ID的布局上
videoView

您应该更改以下行:

View view = inflater.inflate(R.layout.fragment_compare, container, false);
对此(假设布局
片段视频
具有ID
视频视图
):


您正在调用
findviewbyd(R.id.videoView)在没有ID的布局上
videoView

您应该更改以下行:

View view = inflater.inflate(R.layout.fragment_compare, container, false);
对此(假设布局
片段视频
具有ID
视频视图
):


您的视频视图为空,请确保在使用前进行初始化。
VideoView
是否存在于
R.layout.fragment\u compare
中?您的视频视图为空,请确保在使用前进行初始化。
VideoView
是否存在于
R.layout.fragment\u compare
中,当我复制代码以节省时间时,我完全忽略了这一点。谢谢啊,当我复制代码以节省时间时,我完全错过了这一点。谢谢