मैं उपयोगकर्ता को दिनांक चुनने के लिए एंड्रॉइड में डेटपिकर का उपयोग कर रहा हूं। मैं इसे एक काम करना चाहता हूं यदि उपयोगकर्ता एक तारीख चुनता है और इसे सेट करता है (मेरे पास यह ठीक काम कर रहा है) और उसके बाद कोई निश्चित टेक्स्ट फ़ील्ड साफ़ करने के लिए यदि उपयोगकर्ता डेटपिकर पर रद्द बटन दबाता है (डेटपिकर खोलें लेकिन फिर रद्द करें इसका)।एंड्रॉइड में डेटपिकर्स रद्द करने के बटन के लिए श्रोता कैसे बनाएं?
तरह से मैं कोशिश कर रहा है एक
private DatePickerDialog.OnCancelListener mDateCancelListener =
new DatePickerDialog.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
timeClear(); //method that clears text field
}
};
बनाकर है तो मैं
TimePickerDialog timeDialog = new TimePickerDialog(this,
mTimeSetListener,
c.get(Calendar.HOUR),
c.get(Calendar.MINUTE),
false);
timeDialog.setOnCancelListener(mTimeCancelListener);
कर श्रोता संलग्न करने के लिए।
मेरी समस्या यह है कि श्रोता काम करता है अगर उपयोगकर्ता बैक बटन दबाता है, लेकिन अगर वे रद्द बटन दबाएंगे। मैंने एक खारिज श्रोता का उपयोग करने की कोशिश की, और यह काम करता है, इस तथ्य को छोड़कर कि यह बंद हो जाता है भले ही मैं डेटपिकर को सेट या रद्द कर दूं!
मुझे ऐसा करने की क्या ज़रूरत है अगर कुछ और बंद हो जाए तो केवल अगर मैं अपने डेटपिकर पर रद्द बटन दबाता हूं?
मैं वही चीज़ करने की कोशिश कर रहा हूं लेकिन तारीख पिकर के साथ। नीचे दिए गए प्रस्तावित समाधान में, ऐप क्रैश हो जाता है क्योंकि .getButton (TimePickerDialog.BUTTON_NEGATIVE) शून्य लौट रहा है। क्या किसी के पास इसका समाधान है? –
चेक इस [1]: http://stackoverflow.com/questions/2928902/can-we-get-cancel-click-listerner-of-datepicker-dialog – W00di