Привет, Все, что я новичок в Android, добавляю контроллер в VideoView. Почему я становлюсь ниже Ошибка.Почему я получаю сообщение об ошибке Не найдено подходящего конструктора для MediaController (ClassNAme)?
Error:(51, 41) error: no suitable constructor found for MediaController(ClassNAme)
constructor MediaController.MediaController(Context) is not applicable
(actual argument ClassNAme cannot be converted to Context by method invocation conversion)
constructor MediaController.MediaController(Context,boolean) is not applicable
(actual and formal argument lists differ in length)
constructor MediaController.MediaController(Context,AttributeSet) is not applicable
(actual and formal argument lists differ in length)
**** Пожалуйста Найдите ниже код ниже меня ClassName, как показано ниже ****
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_picturedetail, container, false);
Bundle b = getArguments();
Drawable d;
am = getActivity().getAssets();
PictDictDetails pd = (PictDictDetails) b.getSerializable("pictobj");
ImageView iv = (ImageView)v.findViewById(R.id.iv_picture);
VideoView vi = (VideoView)v.findViewById(R.id.iv_video);
TextView tv = (TextView)v.findViewById(R.id.tv_picture_name);
String path = pd.getPath();
MediaController mediaController1 = new MediaController(this);
mediaController1.setAnchorView(vi);
vi.setMediaController(mediaController1);
String uri = path;
vi.setVideoURI(Uri.parse(uri));
vi.start();
Пожалуйста Найдите полный код
общественного класса ИмяКласса расширяет фрагмент {
AssetManager am;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_picturedetail, container, false);
Bundle b = getArguments();
Drawable d;
am = getActivity().getAssets();
PictDictDetails pd = (PictDictDetails) b.getSerializable("pictobj");
ImageView iv = (ImageView)v.findViewById(R.id.iv_picture);
VideoView vi = (VideoView)v.findViewById(R.id.iv_video);
TextView tv = (TextView)v.findViewById(R.id.tv_picture_name);
String path = pd.getPath();
String name = pd.getName();
String uri = path;
vi.setVideoURI(Uri.parse(uri));
vi.start();
MediaController mediaController1 = new MediaController(this);
mediaController1.setAnchorView(vi);
vi.setMediaController(mediaController1);
try
{
InputStream ims = am.open(path);
d = Drawable.createFromStream(ims, null);
iv.setImageDrawable(d);
}
catch(IOException e)
{
e.printStackTrace();
}
tv.setText(name);
return v;
}
@Override
public void onDestroyView() {
super.onDestroyView();
}
Пожалуйста, разместите соответствующие коды – Emil
MediaController (ClassNAme), найдите здесь, где вы используете этот код. Это должен быть MediaController (this) или MediaController (YourActivity.this) или MediaController (getApplicationContext()) –
Сообщение об ошибке кажется ясным .. –