2010-07-09 33 views
81

पर आईडी जोड़ें, मैं EditText ऑब्जेक्ट बना रहा हूं जिसे मैं एक इकाई परीक्षण में संदर्भित करने का प्रयास करता हूं। इस गतिशील रूप से निर्मित ऑब्जेक्ट के लिए नया idR.id जोड़ने का सबसे अच्छा तरीका क्या है, ताकि मैं इसे बाद में यूनिट परीक्षण में findViewById() के माध्यम से संदर्भित कर सकूं?प्रोग्रामेटिक रूप से R.id

+0

के संभावित डुप्लिकेट [एंड्रॉयड: View.setID (पूर्णांक आईडी) प्रोग्राम के रूप में - कैसे से बचने के लिए आईडी विवाद?] (Http://stackoverflow.com/questions/1714297/android-view-setidint-id-programmatically-how-to-avoid-id-conflicts) – rds

उत्तर

188

आप आईडी सेट कर सकते हैं जिसे आप बाद में आरएमआईडी कक्षा में एक्सएमएल संसाधन फ़ाइल का उपयोग करके उपयोग करेंगे, और एंड्रॉइड एसडीके उन्हें संकलन समय के दौरान अद्वितीय मूल्य दें।

res/values ​​/ ids.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <item name="my_edit_text_1" type="id"/> 
    <item name="my_button_1" type="id"/> 
    <item name="my_time_picker_1" type="id"/> 

</resources> 

कोड में इसका इस्तेमाल करने के लिए:

myEditTextView.setId(R.id.my_edit_text_1); 
+1

क्या मैं फ़ाइल को anothername.xml कह सकता हूं? –

+2

देर से उत्तर के लिए खेद है, लेकिन हाँ, सभी एंड्रॉइड संसाधनों के साथ, आप उस .xml को वैसे भी नाम दे सकते हैं ... –

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