2016-02-01 10 views
10

कोई फ़्लोटिंगएक्शन बटन या बटन विजेट के प्रोग्रामेटिक रूप से android:src XML प्रॉपर्टी को कैसे बदल सकता है?एंड्रॉइड ड्रायबल बटन आइकन प्रोग्रामेटिक रूप से बदलें

FloatingActionButton floatingActionButton = (FloatingActionButton) this.findViewById(R.id.start_button); 

यह इस प्रकार के रूप में एक प्रारंभिक android:src सेट है:: मैं एक बटन एक गतिविधि के भीतर निम्नलिखित के रूप में परिभाषित किया गया है

android:src="@android:drawable/ic_media_play" 
मैं setImageResource(int id) का उपयोग करने के android:src एक्सएमएल संपत्ति को बदलने के लिए कोशिश कर रहा हूँ

, लेकिन उदाहरण के लिए होने वाले बटन क्लिक के बाद ic_media_pause जैसे किसी ड्रायबल आइकन तक मैं कैसे पहुंचना चाहता हूं। जब मैं R.drawable.ic_media_pause में setImageResource() विधि में पास करने का प्रयास करता हूं, तो मुझे प्रतीक त्रुटि हल नहीं हो पाती है।

floatingActionButton.setImageResource(R.drawable.ic_media_pause);

मैं इसे कैसे एक तर्क के रूप में पारित करने के लिए उपलब्ध R.drawable संसाधनों पर मिलता है।

किसी भी मदद की सराहना की जाएगी। धन्यवाद!

+0

आप अपने res/drawable फ़ोल्डर में एक फ़ाइल "ic_media_pause" कहा जाता है या इस एक डिफ़ॉल्ट Android SDK में शामिल आइकन है? यदि ऐसा है, तो 'android.R.drawable.ic_media_pause' –

+0

आज़माएं मैं एसडीके में शामिल डिफ़ॉल्ट एंड्रॉइड आइकन लाइब्रेरी का उपयोग कर रहा हूं। आपका सुझाव बिल्कुल काम किया। आपको एक प्रतिक्रिया पोस्ट करनी चाहिए। एक साइड नोट पर, क्या मैं डिफ़ॉल्ट एंड्रॉइड आइकन लाइब्रेरी प्राप्त करने के लिए 'get.Resources.getIdentifier()' का उपयोग कर सकता हूं? –

+0

मुझे वास्तविक त्वरित –

उत्तर

22

आप एसडीके में शामिल एक डिफ़ॉल्ट आइकन तक पहुंचने का प्रयास कर रहे हैं। आपको "एंड्रॉइड" के साथ अपने संसाधन पहचानकर्ता को उपसर्ग करने की आवश्यकता है। उदाहरण के लिए:

floatingActionButton.setImageResource(android.R.drawable.ic_media_pause); 

इससे आपको डिफ़ॉल्ट आइकन का संदर्भ देने की अनुमति मिल जाएगी।

:)

संबंधित मुद्दे