framgent内的Android视频视图?
您好,我在播放url中的视频时遇到问题。我使用的是片段,每当我运行代码时都会出现以下错误: 错误:(32,34)错误:找不到适用于MediaController(MainFragment)的构造函数 构造函数MediaController.MediaController(上下文)不适用 (实际参数MainFragment无法通过方法调用转换转换为上下文) 构造函数MediaController.MediaController(上下文,布尔值)不适用 (实际参数列表和正式参数列表长度不同) 构造函数MediaController.MediaController(上下文,属性集)不适用 (实际参数列表和正式参数列表长度不同) 这是我的密码:framgent内的Android视频视图?,android,android-fragments,Android,Android Fragments,您好,我在播放url中的视频时遇到问题。我使用的是片段,每当我运行代码时都会出现以下错误: 错误:(32,34)错误:找不到适用于MediaController(MainFragment)的构造函数 构造函数MediaController.MediaController(上下文)不适用 (实际参数MainFragment无法通过方法调用转换转换为上下文) 构造函数MediaController.MediaController(上下文,布尔值)不适用 (实际参数列表和正式参数列表长度不同) 构造函
public class MainFragment extends Fragment {
private static final String Video_url = "https://dl.dropboxusercontent.com/u/102136471/20151113_223245.mp4";
public MainFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
VideoView view = (VideoView) getView().findViewById(R.id.videoView);
Uri video = Uri.parse(Video_url);
view.setMediaController( new MediaController(this));
view.setVideoURI(video);
view.start();
view.requestFocus();
return inflater.inflate(R.layout.fragment_main, container, false);
}
我不确定这是在片段内部打开视频视图的正确方法还是?
view.setMediaController(new MediaController(getActivity()));
使用getActivity()
更正:
我得到以下错误:由以下原因引起:java.lang.NullPointerException:尝试在AnimeneWorks.AnimeneWorks.MainFragment.onCreateView(MainFragment.java:29)的空对象引用上调用虚拟方法“android.view.view android.view.view.view.findViewById(int)”啊,谢谢你,博士,但现在它说“不能播放这个视频”。这是可变的褪色率。私有静态最终字符串视频_url=“”@EdgarAxe检查你的视频。你的问题现在解决了。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v=inflater.inflate(R.layout.fragment_main, container, false);
// Inflate the layout for this fragment
VideoView view = (VideoView) v.findViewById(R.id.videoView);
Uri video = Uri.parse(Video_url);
view.setMediaController(new MediaController(getActivity()));
view.setVideoURI(video);
view.start();
view.requestFocus();
return v;
}