2011-07-28 7 views
17

मैं रैखिक लेआउट के लिए एक शैली में परिभाषित किया गया है, लेकिन लेआउट main.xmlक्यों संभव रेखीय लेआउट के लिए शैली विशेषताओं


main.xml की चित्रमय दृश्य में दिखाई नहीं दे रहा है करने के लिए नहीं है।

<LinearLayout style="VerticalThemeLayoutInputs"> 

styles.xml

<resources> 
<style name="VerticalThemeLayoutInputs"> 
    <item name="android:background">#6699FF</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">fill_parent</item> 

</style> 
</resources> 

संपादित करें:

लेकिन कोड के नीचे से कार्य करेंगे, लेकिन मैं इस कोड

<LinearLayout 
android:background="#6699FF" 
android:orientation="horizontal" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 
नहीं करना चाहते

दिलचस्प तथ्य

मैं एक scrollview इस्तेमाल किया। इसके भीतर मैंने कई रैखिक लेआउट रखे। लेआउट गुण लगभग समान हैं इसलिए मैंने इसके लिए शैली बनाने का फैसला किया। लेकिन क्या हो रहा है पता है? लेआउट केवल ग्राफिकल-व्यू में दिखाई नहीं देता है लेकिन यह एम्यूलेटर में ठीक काम करता है।

लेकिन वास्तव में क्या हो रहा है? मुझे लगता है कि यह स्क्रॉल दृश्य के कारण है।

+0

ने इसे आपके कोड में उपयोग किया है ...? यदि हाँ .. कैसे ..? – ngesh

+0

@ntc हाँ क्या आपको पूर्ण main.xml की आवश्यकता है? – vnshetty

+0

मुझे लगता है कि आपको खुद को आकर्षित करने के लिए लेआउट पर setWillNotDraw (false) को कॉल करने की आवश्यकता है –

उत्तर

20

मुझे लगता है कि आप क्या चाहते हैं style="@style/VerticalThemeLayoutInputs" है।

उदा।

<LinearLayout 
    style="@style/VerticalThemeLayoutInputs"> 
+1

@ स्टीव प्रेंटिस का उपयोग नहीं करना चाहिए – vnshetty

+0

यदि यह काम नहीं करता है, तो आपको अपना अधिक लेआउट पोस्ट करना होगा। –

+0

@ vnshetty, प्रश्न को अद्यतन करने के लिए धन्यवाद। मैंने आपके लेआउट और स्टाइल को एक प्रोजेक्ट में प्लग किया है और यदि आप इस जवाब में क्या करते हैं तो यह ठीक काम करता है। –

0
<item name="android:layout_marginTop">@dimen/margin_top</item> 

यह टैग हटाने और जाँच .. यह एक अमान्य एक लगता है .. और main.xml में style="@style/VerticalThemeLayoutInputs" जोड़ने सिर्फ स्टीव

+0

को हटा दिया गया है लेकिन मैंने – vnshetty

+0

का उपयोग नहीं किया है, कृपया मेरे संपादन – vnshetty

+0

मुझे नहीं बताएं कि आपको यह नहीं पता था .. यह भी है कि लोग आमतौर पर कैसे करते हैं .. शैली का उपयोग करना एक और तरीका है जब आपके पास एक ही संपत्ति के साथ कई विचार हैं .. और अपने कोड के साथ सब कुछ मेरे लिए ठीक काम करता है .. – ngesh

3

रेस में main.xml द्वारा दिए गए ऊपर उत्तर की तरह/लेआउट /:

<?xml version="1.0" encoding="UTF-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    style="@style/VerticalThemeLayoutInputs" 
> 
</LinearLayout> 

res/values ​​में styles.xml /:

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
<style name="VerticalThemeLayoutInputs"> 
    <item name="android:background">#6699FF</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">fill_parent</item> 
    <item name="android:orientation">horizontal</item> 
    <item name="android:gravity">center_vertical</item> 
</style> 
</resources> 

गतिविधि में onCreate विधि:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    ... 
0

आप से हैं कि अर के अंदर नहीं है फ़ोल्डर में स्थित style.xml/एन/.. क्योंकि वह पहले "मूल्य \ style.xml में डिफ़ॉल्ट बुलाया "

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