В моем приложении для Android я пытаюсь просто вернуться к своей основной активности после завершения воспроизведения моего видео. Я перепробовал много обходных путей, но не могу найти способ вызвать StartActivity из видео onCompletionListener - я получаю сообщение об ошибке «не могу сделать статическую ссылку на нестатический метод startActivity (Intent) из типа Activity».
Я попытался получить контекст из Activity, который предшествовал videoView, и передать его в intent / startActivity. Это позволило приложению скомпилироваться, но затем я получил исключение времени выполнения.
Вот код в его нынешнем виде, который получает ошибку «не могу сделать статическую ссылку» - любая помощь будет принята!
public class Videoscreen extends Activity{
public static VideoView myVideoView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videoplay);
myVideoView = (VideoView) findViewById(R.id.main_videoview);
System.out.println("playing video oncreate");
playVideo();
}
public static void playVideo(){
// video finish listener
myVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer vmp) {
Intent intent = new Intent();
intent.setClass(Videoscreen.this, Game.class);
Videoscreen.startActivity(intent);
}
});
String low_word = SpellingView.get_low_word();
Uri bubblesUri = Uri.parse("android.resource://org.lalloinc.ilovetrucks/raw/"+ low_word + "_vid");
myVideoView.setVideoURI(bubblesUri);
myVideoView.start();
}
}