2010-07-24 12 views
8

क्या कोई यह बता सकता है कि मैं AlertDialog.Bilder वर्ग का किस संदर्भ का उपयोग करूँ? मैं एंड्रॉइड ऐप विकास के लिए नया हूं और मैं स्पष्ट रूप से समझ नहीं पा रहा हूं कि किस संदर्भ का उपयोग करना है?मैं AlertDialog.builder का किस संदर्भ में उपयोग करूँ?

कहो, मैं AlertDialog.Builder वर्ग के लिए एक वस्तु बनाने के लिए चाहते हैं -

AlertDialog.Builder ab = new AlertDialog.Builder(); 
ab.setMessage("Test"); 

ab.show(); 

क्या संदर्भ मैं इसे में इस्तेमाल करना चाहिए? क्या यह अलग है यदि मैं अलर्ट संवाद onCreate या OnClickListener या ऐसी किसी भी घटना के हैंडलर का उपयोग करता हूं?

उत्तर

4

मेरे ऐप के पहले संस्करण में मैंने क्रिएटडिअलॉग का उपयोग न करने की गलती की और इसके बजाय संवाद स्वयं बनाया और दिखाया। यदि आप इसे स्वयं करते हैं तो आपको गतिविधि खत्म होने से पहले संवाद को खारिज करने जैसी चीजों का ख्याल रखना होगा() ed अन्यथा एक विंडो रिसाव होगी।

मैं आपकी गतिविधि में क्रिएटडिअलॉग पर ओवरराइड करूँगा और ab.create() (दिखाएं नहीं)() दिखाएं। onCreateDialog तब संवाद दिखाएगा और आपको केवल showDialog (id) को कॉल करना होगा।

11

आपको उस गतिविधि के संदर्भ का उपयोग करना चाहिए जिसे से निष्पादित किया गया है। दूसरे शब्दों में, संदर्भ के रूप में बस YourNameOfActivity.this का उपयोग करें।

1
AlertDialog.Builder ab = new AlertDialog.Builder(this); 
ab.setMessage("Test") 
    .show; 

(या) यदि u चाहता हूँ (हाँ, नहीं) बटन इस

AlertDialog.Builder ab = new AlertDialog.Builder(this); 
ab.setMessage("Are you sure you want to exit?") 
    .setPositiveButton("Yes", dialogClickListener) 
    .setNegativeButton("No", dialogClickListener) 
    .show(); 
उपयोग का मतलब है
संबंधित मुद्दे