हाय मुझे संदेश संवाद में समस्या का सामना करना पड़ रहा है, बल को बंद करने के लिए मेरा कोड यहां है।विंडो मैनेजर खराब टोकन अपवाद
पर मेंबनाएँ:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.email_result);
email_result = (Button) findViewById(R.id.email_result_btn);
email_result.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (diffdays > 365) {
h.sendEmptyMessage(0);
}
}
}
}
मेरे हैंडलर:
private Handler h = new Handler() {
public void handleMessage(Message msg) {
showMessageDialog("Sorry, you cannot email entries which are earlier than one year ago.");
}
};
ShowMessageDialog विधि:
public void showMessageDialog(String nMessage) {
alertDialog = new Dialog(Email_Result.this);
AlertDialog.Builder customBuilder = new AlertDialog.Builder(
Email_Result.this);
customBuilder.setMessage(nMessage);
customBuilder.setPositiveButton(getString(R.string.ok),
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
alertDialog.dismiss();
}
});
alertDialog = customBuilder.create();
alertDialog.setCancelable(true);
alertDialog.show();
}
त्रुटि लॉग
01-11 12:08:24.470: ERROR/AndroidRuntime(325): FATAL EXCEPTION: main
01-11 12:08:24.470: ERROR/AndroidRuntime(325): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActiv[email protected] is not valid; is your activity running?
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.ViewRoot.setView(ViewRoot.java:505)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.Window$LocalWindowManager.addView(Window.java:424)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.app.Dialog.show(Dialog.java:241)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at com.stress1.Email_Result.showMessageDialog(Email_Result.java:207)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at com.stress1.Email_Result$2.onClick(Email_Result.java:81)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.View.performClick(View.java:2408)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.view.View$PerformClick.run(View.java:8816)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.os.Handler.handleCallback(Handler.java:587)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.os.Handler.dispatchMessage(Handler.java:92)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.os.Looper.loop(Looper.java:123)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at android.app.ActivityThread.main(ActivityThread.java:4627)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at java.lang.reflect.Method.invokeNative(Native Method)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at java.lang.reflect.Method.invoke(Method.java:521)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
01-11 12:08:24.470: ERROR/AndroidRuntime(325): at dalvik.system.NativeStart.main(Native Method)
पोस्ट करें ** LogCat **, यह त्रुटि आमतौर पर तब होती है जब आप 'गतिविधि समूह' –
का उपयोग कर रहे हैं क्यों आप अपना संवाद दिखाने के लिए हैंडलर का उपयोग कर रहे हैं। आप अपने ऑनक्लिक से showMessageDialog को भी कॉल कर सकते हैं। इस कोड में हैंडलर का उपयोग क्या है? कृपया इस लिंक को जांचें कि हमें अपनी कक्षा में हैंडलर क्यों चाहिए। http://developer.android.com/reference/android/os/Handler.html –
मैंने हैंडलर के बिना भी कोशिश की थी, लेकिन मेरी त्रुटि को भी मेरी त्रुटि को –