Я не знаю, что не так.Но я получаю сообщение об ошибке:
"Ошибка: (62, 29) ошибка: не удается найти метод символов setMediaController (MediaController)"
Я пытаюсь использовать видеовидениев переработке просмотра, чтобы воспроизвести все видео.Вместо videoview я использовал библиотеку "FullScreenVideoView".
Пожалуйста, помогите мне.
Accident.java
package com.example.location.Adapters;
import android.content.Context;
import android.graphics.Point;
import android.media.MediaPlayer;
import android.net.Uri;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.Display;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.MediaController;
import android.widget.TextView;
import com.example.location.ImageUploadInfo;
import com.example.location.R;
import com.github.rtoshiro.view.video.FullscreenVideoView;
import java.util.List;
public class Accident extends RecyclerView.Adapter<Accident.ViewHolder>
{
private MediaController mediaController;
private Context context;
private List<ImageUploadInfo> videoUploadInfoList;
public static class ViewHolder extends RecyclerView.ViewHolder {
FullscreenVideoView videoview;
public TextView imageNameTextView, TimeDate;
public ViewHolder(View v) {
super(v);
videoview = (FullscreenVideoView) v.findViewById(R.id.videoa);
imageNameTextView = (TextView) v.findViewById(R.id.VideoNameTextViewa);
TimeDate = (TextView) v.findViewById(R.id.videotimea);
}
}
public Accident(Context context, List<ImageUploadInfo> mainVideoUploadInfoList) {
this.context = context;
mediaController=new MediaController(context);
this.videoUploadInfoList = mainVideoUploadInfoList;
}
@NonNull
@Override
public Accident.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycleraccident, parent, false);
ViewHolder viewHolder = new Accident.ViewHolder(view);
return viewHolder;
}
public static int getScreenWidth(Context c) {
int screenWidth = 0; // this is part of the class not the method
if (screenWidth == 0) {
WindowManager wm = (WindowManager) c.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
screenWidth = size.x;
}
return screenWidth;
}
@Override
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
try
{
holder.videoview.setMediaController(mediaController);
ImageUploadInfo video=videoUploadInfoList.get(position);
holder.imageNameTextView.setText(video.getImageDescription());
holder.TimeDate.setText(video.getTimeDate());
holder.videoview.setVideoURI(Uri.parse(video.getImageURL()));
holder.videoview.getLayoutParams().height = getScreenWidth(context) * 9 /16;
}
catch (Exception e)
{
e.printStackTrace();
}
holder.videoview.requestFocus();
holder.videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
holder.videoview.start();
}
});
}
@Override
public int getItemCount() {
return 1;
}
}
Заранее спасибо.