비디오가 끝난 후 경고 대화 상자를 표시하려고합니다. 이 작업을 수행하는 또 다른 방법은비디오 재생이 끝난 후 대화 상자 (OnCompletionListener + 대화 상자)
public class VideoActivity extends Activity{
private Context mContext;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.videoview);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
VideoView vv = (VideoView) findViewById(R.id.videoview);
MediaController mc = new MediaController(this);
public OnCompletionListener onCompletion(final String key){
OnCompletionListener ocl = new OnCompletionListener(){
public void onCompletion(MediaPlayer mp) {
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext); //Lag en dialog utifra kontekst
dialog.setTitle("Hello"); //Hent ut tittelen til overlayItem
dialog.setMessage("hello"); //Hent ut teksten til overlayItem
dialog.setCancelable(false);
dialog.setPositiveButton("Something", new OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent intent = new Intent(mContext, VideoMenu.class);
mContext.startActivity(intent);
}
});
dialog.show(); //Vis dialogen
}
있습니까 :
이
내가 지금까지 가지고있는 코드는? 나는 미친 듯이 인터넷 검색을하고 있지만 어떤 도움도 찾을 수 없습니다. 이 코드를 사용하면 널 포인터 예외가 발생합니다.감사합니다. :)
11-29 23:12:54.215: E/AndroidRuntime(8445): FATAL EXCEPTION: main
11-29 23:12:54.215: E/AndroidRuntime(8445): java.lang.NullPointerException
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.app.AlertDialog.resolveDialogTheme(AlertDialog.java:142)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.app.AlertDialog$Builder.<init>(AlertDialog.java:359)
11-29 23:12:54.215: E/AndroidRuntime(8445): at com.example.norskattraksjon.VideoActivity$1.onCompletion(VideoActivity.java:97)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.widget.VideoView$3.onCompletion(VideoView.java:345)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.media.MediaPlayer$EventHandler.handleMessage(MediaPlayer.java:1773)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.os.Handler.dispatchMessage(Handler.java:99)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.os.Looper.loop(Looper.java:137)
11-29 23:12:54.215: E/AndroidRuntime(8445): at android.app.ActivityThread.main(ActivityThread.java:4517)
11-29 23:12:54.215: E/AndroidRuntime(8445): at java.lang.reflect.Method.invokeNative(Native Method)
11-29 23:12:54.215: E/AndroidRuntime(8445): at java.lang.reflect.Method.invoke(Method.java:511)
11-29 23:12:54.215: E/AndroidRuntime(8445): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
11-29 23:12:54.215: E/AndroidRuntime(8445): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
11-29 23:12:54.215: E/AndroidRuntime(8445): at dalvik.system.NativeStart.main(Native Method)
후 당신의 로그 캣 오류를 우리가 무슨 일이 일어나고 있는지 볼 수 있습니다. 'mContext'를 초기화 했습니까? – Sam
mContext를 초기화했습니다. – DeSoto
문제는 당신의 테마와 관련이 있습니다. 우선이 API를 실행중인 대상 API 또는 API는 무엇입니까? – Sam