onClick продолжать останавливаться
public class MandarinPage extends AppCompatActivity {
Button b01,b02,b03;
VideoView Vv01;
MediaController mediaC;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mandarin_page);
b01=(Button)findViewById(R.id.button01);
b02=(Button)findViewById(R.id.button02);
b03=(Button)findViewById(R.id.button03);
Vv01=(VideoView)findViewById(R.id.videoView);
}
public void viedeplay(View v){
String videopath = "android.resource://a0.besta_e_learning/"+R.raw.sample_video;
Uri uri = Uri.parse(videopath); //URI stand for Uniform Resource Identifier
Vv01.setVideoURI(uri);
Vv01.setMediaController(mediaC);
mediaC.setAnchorView(Vv01);
Vv01.start();
}
когда я нажал кнопку воспроизведения, мой эмулятор показал это.
Может кто-нибудь, пожалуйста, помогите мне с этим? какая-нибудь ошибка там? Когда я нажимаю кнопку, чтобы воспроизвести мое видео, оно показывает, что приложение продолжает останавливаться, и я не представляю, какая его часть пошла не так.
Здесь ошибки.
E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: основной процесс: a0.besta_e_learning, PID: 7198 java.lang.IllegalStateException: Не удалось выполнить метод для android:onClick на android.support.v7.app.AppCompatViewInflater$DeclaredOnClickLavatflaj.jpg 293) на android.view.View.performClick(View.java:5610) на android.view.View$PerformClick.run(View.java:22265) на android.os.Handler.handleCallback(Handler.java:751) на android.os.Handler.dispatchMessage(Handler.java:95) на android.os.Looper.loop(Looper.java:154) на android.app.ActivityThread.main(ActivityThread.java:6077) на java.lang.reflect.Method.invoke(собственный метод) на com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) Вызывается: java.lang.reflect.InvocationTargetException в java.lang.reflect.Method.invoke(собственный метод) в android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) на android.view.View.performClick(View.java:5610) на android.view.View$PerformClick.run(View.java:22265) на android.os.Handler.handleCallback(Handler.java:751) на android.os.Handler.dispatchMessage(Handler.java:95) на android.os.Looper.loop(Looper.java:154) на android.app.ActivityThread.main(ActivityThread.java:6077) на java.lang.reflect.Method.invoke(собственный метод) на com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) Вызывается: java.lang.NullPointerException: попытка вызвать виртуальный метод 'void android.widget.MediaController.setAnchorView(android.view.View)' для ссылки на нулевой объект в a0.besta_e_learning.MandarinPage.viedeplay(MandarinPage.java:32) java.lang.reflect.Method.invoke(собственный метод) на android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick (AppCompatViewInflater.java:288) на android.view.View.performClick (View.java:5610 at) android.view.View $ Perfor mClick.run (View.java:22265) на android.os.Handler.handleCallback(Handler.java:751) на android.os.Handler.dispatchMessage(Handler.java:95) на android.os.Looper.loop (Looper.java: 154) в android.app.ActivityThread.main(ActivityThread.java:6077) в java.lang.reflect.Method.invoke(собственный метод) в com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit).java: 865) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
2 ответа
Я думаю, что ошибка в этой строке.. Попробуйте написать видео расширение видео
String videopath =
"android.resource://a0.besta_e_learning/"+R.raw.sample_video.mp4;
ИЛИ ЖЕ
String videopath =
"android.resource://a0.besta_e_learning/"+R.raw.sample_video.3gp;
Попробуйте этот код, это может помочь
MediaController mediaC = new MediaController(this);
Vv01.setMediaController(mediaC);