मैं इस मैं किसी अन्य वर्ग से एक विधि कॉल करने की कोशिश के बाहर एक वर्गएंड्रॉयड - getResources() और स्थिर
public class Preferences extends PreferenceActivity implements OnSharedPreferenceChangeListener
मिल गया है। इस विधि में शामिल हैं:
mFoo.setTextColor(getResources().getColor(R.color.orange))
लेकिन यह काम नहीं करता है। यह मुझे बताता है getResources
स्थिर नहीं है ... मैं इसे कैसे बदल सकता हूं?
धन्यवाद। मेरी मूल समस्या यह थी कि मैं कक्षा प्राथमिकताओं से myClass से संबंधित एक विधि को कॉल करना चाहता हूं। तो जब कोई वरीयता बदल गई है, तो उसे "विदेशी" वर्ग से एक विधि को कॉल करना होगा, शायद आप मुझे संकेत दे सकें, इसे कैसे हल करें ?! – Christoph
@ क्रिस्टोफ: आप अपनी 'प्राथमिकता' से कुछ अन्य गतिविधियों के विजेट अपडेट करने की कोशिश नहीं करना चाहते हैं। 'RegisterOnSharedPreferenceChangeListener()' का उपयोग करके वरीयता परिवर्तनों के लिए अपनी अन्य गतिविधि रजिस्टर करें। जब वरीयता बदलती है, गतिविधि अधिसूचित होती है और समायोजन कर सकती है। – CommonsWare
ठीक है, मैंने जो किया है, उससे पहले, मैं, मेरी "अन्य गतिविधि" में कोड को कम करने का एक तरीका है, चेंजलिस्टर को आउटसोर्स कर रहा हूं .. – Christoph