2011-03-12 7 views
22

के साथ भिन्न होता है, मुझे परिदृश्य या चित्र देखने (और बाद में अन्य कॉन्फ़िगरेशन) के आधार पर एंड्रॉइड परिवर्तन आकार में एक्सएमएल लेआउट रखने में दिलचस्पी है।क्या एंड्रॉइड में एक्सएमएल में स्थिरांक परिभाषित करना संभव है जो कॉन्फ़िगरेशन

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_alignParentBottom="true" 
android:background="@drawable/stream_bg_1px_wide" 
android:layout_height="150dip" > 

इस उदाहरण मैं सिर्फ लैंडस्केप या पोर्ट्रेट के आधार पर 150dip आकार बदलते रहना चाहते हैं में, कुछ और परिवर्तन नहीं।

मैं लेआउट और लेआउट-भूमि का उपयोग कर रहा हूं, और मुझे पता है कि मैं उन फ़ोल्डर्स में लेआउट दोहरा सकता हूं, लेकिन इससे दर्द में थोड़ा बदलाव होता है। जब मैं स्क्रीन घनत्व और आकार के आधार पर अधिक रूपों को पेश करता हूं तो यह और भी खराब हो जाता है।

तो, मैंने सोचा कि यह एक XML फ़ाइल में एक मूल्य (स्थिर) को परिभाषित, और मेरे लेआउट, कैसे रंग

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="shopper_background"> #FFFFFF</color> 
</resources> 

परिभाषित किया जा सकता की तर्ज पर करने के लिए इसी से यह संदर्भित करने के लिए संभव है .. ....

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <value name="footer_size" >150</value> 
</resources> 

तो मैं प्रत्येक कॉन्फ़िगरेशन में अलग-अलग मानों के साथ उस फ़ाइल को दोहराना चाहूंगा।/मूल्यों /, res/values ​​भूमि किसी भी मदद

उत्तर

23

हां। एक आयाम संसाधन फ़ाइल में एक स्वीकृत आइटम है। तो उदा। res/values ​​/ dimension.xml और

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <dimen name="footer_size" >150dp</dimen> 
</resources> 
35

हाँ, आप यह कर सकते हैं के लिए

धन्यवाद, हम इसे सभी Android ही :) में जगह कर बस रेस में अपने स्थिरांक को परिभाषित/आदि आयाम के लिए , टैग का उपयोग करें और लेआउट में @ dimen/my_value का उपयोग करके उन्हें देखें।

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

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