2012-12-11 21 views
5

मैं एक प्रगति संवाद दिखाना चाहता हूं जो वांछित होने पर केवल "बंद" बटन दिखाएगा, उदाहरण के लिए जब प्रगति मूल्य अपने अधिकतम मूल्य तक पहुंच जाता है। उस "करीबी" बटन पर मैं संवाद को खारिज करना चाहता हूं। मैंने नकारात्मक बटन के साथ प्रगति संवाद किया है और जब मैं उस पर क्लिक करता हूं तो मैं इसे खारिज कर सकता हूं लेकिन मैं नहीं चाहता कि "बंद" बटन हमेशा जब चाहें या प्रगति पूर्ण होने पर सक्षम हो।प्रगति संवाद बटन को अक्षम/सक्षम करने के लिए कैसे करें

धन्यवाद।

+0

मुझे लगता है कि यह असिंक्टास्क – Guillaume

+0

@ गुइलाउम के साथ संभव है, मैं asyncTask का उपयोग कर रहा हूं और पहले मैं पोस्टएक्सक्यूट पर संवाद को खारिज कर रहा था लेकिन अब मैं डायलॉग टेक्स्ट और उपयोगकर्ता को बंद करने का विकल्प के रूप में अंतिम स्थिति दिखाना चाहता हूं। मैं बंद बटन कैसे डायल कर सकता हूं और फिर इसे सक्षम कर सकता हूं? – SohailAziz

+1

आप उस 'सेट विज़िबल (android.View.VISIBLE)' और 'सेट विज़िबल (android.View.INVISIBLE) ' http://developer.android.com/reference/android/view/View.html#setVisibility(int का उपयोग कर सकते हैं) – Guillaume

उत्तर

1

आपको प्रोग्रेसबार और बटन के साथ एक कस्टम संवाद बनाना चाहिए। फिर बटन.सेट दृश्यता (देखें। VISIBLE) और बटन.सेट दृश्यता (देखें .INVISIBLE)

5

गिलाउम की टिप्पणी और करीम के उत्तर का निर्माण करने के लिए, आप प्रोग्रेसडिअलॉग पर एक बटन को छुपा/दिखा सकते हैं या सक्षम/अक्षम कर सकते हैं:

ProgressDialog dlg = new ProgressDialog(this); 
dlg.setButton(ProgressDialog.BUTTON_NEUTRAL, 
       "Close", 
       new DialogInterface.OnClickListener() {     
         @Override 
         public void onClick(DialogInterface dialog, int which) { 
          //button click stuff here 
         } 
        }); 

dlg.show();  
dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setEnabled(false); 
//or alternatively 
//dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setVisibility(View.INVISIBLE); 

आप Button पर लटका कर सकते हैं बाद में सक्षम करने के लिए, एक बार अपने कार्य को पूरा करता। show पर कॉल करने के बाद बस getButton पर कॉल करना सुनिश्चित करें।