Android 试图在片段中使用VideoView时出现NullPointerException
我正在尝试将YouTube视频嵌入我的应用程序,如下所述: 然而,当我访问片段时,我似乎遇到了一个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
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
中,当我复制代码以节省时间时,我完全忽略了这一点。谢谢啊,当我复制代码以节省时间时,我完全错过了这一点。谢谢