2010-08-31 6 views
11

एंड्रॉइड संसाधन स्ट्रिंग्स के उपनाम बनाने की अनुमति देता है जैसे:क्या कोई एंड्रॉइड संसाधन स्ट्रिंग को नए तारों में जोड़ सकता है?

<resources> 
<string name="foo">somestring</string> 
<string name="bar">@string/foo</string> 
</resources> 

जिसके द्वारा संसाधन "बार" नामक संसाधन के लिए उपनाम बन जाता है।

मैं अपने ऐप के लिए एक मौजूदा संसाधन उपसर्ग को अलग-अलग प्रत्यय के साथ जोड़ना चाहता हूं, यानी इसे विस्तारित करने की संभावना है:

<resources> 
<string name="foo">foo</string> 
<string name="bar">@string/foo+bar</string> 
<string name="else">@string/foo+else</string> 
</resources> 

जहां संसाधन "बार" स्ट्रिंग "foobar" उत्पन्न करेगा। यह स्पष्ट है कि '+' यहां काम नहीं करता है, लेकिन क्या इस तरह के स्ट्रिंग कॉन्सटेनेशन को प्राप्त करने के लिए कोई अन्य विकल्प है, ताकि कोई स्ट्रिंग संसाधनों का एक गुच्छा परिभाषित कर सके जिसमें एक सामान्य उपसर्ग है?

मुझे एहसास है कि मैं रनटाइम पर ऐसे संसाधन स्ट्रिंग कॉन्सटेनेशन कर सकता हूं लेकिन संसाधनों में उन्हें स्थिर रूप से परिभाषित करना इतना अधिक सुरुचिपूर्ण और सरल प्रतीत होता है।

माइकल

उत्तर

15

नहीं, यह संभव नहीं है। उदाहरण

getResources().getString(R.string.foo); 
+0

स्ट्रिंग उन 2 के संयोजन के द्वारा हुई 'String.Format (getResources()। GetString (आर हो जाएगा के लिए तुम बस <string name="bar">This is my %s</string> उपयोग कर सकते हैं और फिर अपने ऐप में String.format() का उपयोग के साथ चर में भरने के लिए। string.bar), getResources()। getString (R.string.foo)) ' – Paul

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

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