2013-07-13 8 views
8

हैलो मैं ActionBar Sherlock और पुराने संस्करण compatbility के लिए android support Library v4 (मेरे ऐप की minSdkVersion = "8") जिसमें मैं ListView में TextView के लिए कुछ विशेषताओं का इस्तेमाल किया है का उपयोग कर ListView नेविगेशन के साथ एक नेविगेशन ड्रॉर बनाया है:मार्गदर्शक ड्रॉवर एंड्रॉयड एपीआई विशिष्ट लेआउट गुण

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/title" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceListItemSmall" 
    android:gravity="center_vertical" 
    android:paddingLeft="16dp" 
    android:paddingRight="5dp" 
    android:textColor="#fff" 
    android:background="?android:attr/activatedBackgroundIndicator" 
    android:minHeight="?android:attr/listPreferredItemHeightSmall"/> 

यह त्रुटि दिखा के रूप में ?android:attr/activatedBackgroundIndicator 11 एपीआई से है और ?android:attr/textAppearanceListItemSmall & ?android:attr/listPreferredItemHeightSmall एपीआई से कर रहे हैं है 14.

मैं ActionBar इसकी जगह से ?android:attr/activatedBackgroundIndicator का समर्थन करने में कामयाब शेरलॉक ?attr/activatedBackgroundIndicator। लेकिन मुझे अन्य दो विशेषताओं के लिए कोई समानता नहीं मिली। एक्शनबार शेरलाक में ?attr/textAppearanceListItemSmall है लेकिन यह ठीक से काम नहीं कर रहा है।

तो 2.1 से ऊपर सभी एपीआई को समर्थन प्रदान करने के लिए इन विशेषताओं के समानता क्या है?

उत्तर

2

मुझे यकीन नहीं है कि आपको वास्तव में एंड्रॉइड आयामों का उपयोग करने की आवश्यकता है (जैसे listPreferredItemHeightSmall इत्यादि) कुछ एंड्रॉइड संस्करण में यह आयाम 12 हो सकता है और अन्य 14 में। मैं आपको अपना आयाम बनाने का सुझाव देता हूं, जिसका उपयोग किया जाएगा आपका पूरा ऐप, और परिवर्तन की आवश्यकता होने पर आप उन्हें आसानी से संपादित कर सकते हैं।

+0

हैलो, मैं यह की स्थापना ' 50dp 18sp' धन्यवाद एक बहुत द्वारा हल कर दिया है! :) –

+2

यह भी एक सवाल है। यह कस्टम आयाम सही लगता है। लेकिन क्या ये आयाम एंड्रॉइड मानक आयामों से भिन्न हैं? मेरा मतलब है, इस आयामों के लिए एंड्रॉइड एपीआई के मूल्य क्या हैं? –

+1

आप एंड्रॉइड एसडीके में उन आयामों को पा सकते हैं। इससे कोई फर्क नहीं पड़ता कि आयाम अलग हैं, यदि आपके लेआउट आपके जैसा दिखते हैं और आप एंड्रॉइड डिज़ाइन पैटर्न का पालन करते हैं। – koso

31

बजाय निम्नलिखित तीन मापदंडों को दूर करने के पूर्व के संस्करणों का समर्थन करने के लिए,

android:textAppearance="?android:attr/textAppearanceListItemSmall" 
    android:background="?android:attr/activatedBackgroundIndicator" 
    android:minHeight="?android:attr/listPreferredItemHeightSmall" 

आप वास्तव में उन्हें बराबर मान/संसाधनों के साथ बदल सकते हैं।

बराबर मूल्यों, https://github.com/android/platform_frameworks_base/blob/master/core/res/res/values/themes.xml

अब से प्राप्त किया जा सकता

  • एक)android:textAppearance="@android:style/TextAppearance.Medium"

  • ख)

    1. से https://github.com/habzy/Test0011_DialerPad/blob/master/res/drawable/list_item_activated_background.xml

    2. एक चयनकर्ता डाउनलोड ऊपर परियोजना में, hdpi में संसाधनों ब्राउज़ mdpi आदि और list_activated_holo.9 नामित फ़ाइलों मिलता है।png

    3. अंत में

    android:background="@drawable/list_item_activated_background"

  • ग) प्राप्त बराबर मूल्यों से, हम जानते हैं कि listPreferredItemHeightSmall 48dip

    android:minHeight="48dip"

  • है
+2

आप मूल्यों, मान-v11 ई t.c. में API विशिष्ट शैलियों को भी बना सकते हैं। –

+1

मुझे लगता है कि चरण बी में कुछ सुधार आवश्यक हैं। ये नाम मेल नहीं खाते हैं। – ooolala

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