在一个Java Android类中使用相同名称的方法
我有一个应用程序,使用视频视图显示视频流
由于我不想显示Android版本的视频格式,因此<;2.0我正在使用vitamio库在旧设备上显示视频
然而Vitamio比Android视频视图库慢得多,我不想在所有设备上都使用它;我只想把它用在老的上面
但是,库和方法的名称相同: i、 e
import 安卓.media.MediaController;
import io.vov.vitamio.MediaController;
在类中,我只导入安卓 Media controller,然后访问vitamio,如下所示:
io.vov.vitamio.widget.MediaController mediacontroller = new io.vov.vitamio.widget.MediaController(parentActivity);
在我想访问vitamio库中的一种方法之前,这一切都很正常。例如:
videoView.io.vov.vitamio.widget.VideoView.setVideoURI(video);
这不起作用,因为正确的用法是:
videoView.setVideoURI(video);
如果我这样做了,那么Android媒体播放器就会被访问,并且代码不正确。 如何访问同一类中具有相同名称的方法。我希望能够根据用户的设备使用这两种方法
提前谢谢
# 1 楼答案
检查您的类VideoView是否来自类型“VideoView.io.vov.vitamio.widget.VideoView”,而不是“android.widget.VideoView”
# 2 楼答案
通过这样做,您试图以静态方式调用该方法
您应该将videoView变量声明为
videoView.io.vov.vitamio.widget.VideoView
的实例,然后调用适当的方法:# 3 楼答案
您不需要
videoView.io.vov.vitamio.widget.VideoView.setVideoURI(video)
,它应该是videoView.setVideoURI(video)
,其中videoView的类型为io.vov.vitamio.widget.VideoView
如果它是
Object
,则可以显式强制转换:((io.vov.vitamio.widget.VideoView)myObject).setVideoURI(video)