2012-03-29 15 views
18

मैं textsitlestrip से textsize और textcolor सेट करने की कोशिश कर रहा हूं और इसे करने का कोई तरीका नहीं ढूंढ सकता।मैं टेक्स्टकॉलर, कोड से पेजरटाइटस्ट्रिप का टेक्स्टसाइज कैसे सेट कर सकता हूं?

<android.support.v4.view.ViewPager 
    android:id="@+id/myPager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v4.view.PagerTitleStrip 
     android:id="@+id/myStrip" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="top" /> 

</android.support.v4.view.ViewPager> 

संपादित

main.xml

<android.support.v4.view.ViewPager 
    android:id="@+id/myPager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v4.view.PagerTitleStrip 
     style="@style/PagerTitleStrip" 
     android:id="@+id/myStrip" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="top" /> 

</android.support.v4.view.ViewPager> 

style.xml

<style name="PagerTitleStrip"> 
    <item name="android:textAppearance">@style/PagerTitleStripTextAppearance</item> 
</style> 

<style name="PagerTitleStripTextAppearance"> 
    <item name="android:textColor">#FFFFFFFF</item> 
    <item name="android:textSize">14sp</item> 
</style> 

दया है कि मैं AttributeSet से इसे बनाने के लिए एक तरह से नहीं मिला था, संसाधन नोटफॉउंड या अमान्य संसाधन संसाधन प्राप्त करें।

+0

आप 'PagerTitleStrip' में केवल पाठ के लिए उन विशेषताओं सेट करना चाहते हैं? – Luksprog

उत्तर

2

देखो में this

final TypedArray a = context.obtainStyledAttributes(attrs, ATTRS); 
final int textColor = a.getColor(1, 0); 
final int textSize = a.getDimensionPixelSize(2, 0); 
+1

'सार्वजनिक पेजर टिटलेस्ट्रिप (संदर्भ संदर्भ, विशेषता एसईटी) { \t सुपर (संदर्भ, attrs); \t (...) } 'पेजरटिटस्ट्रिप के लिए ** विशेषताएँ ** ** बनाने के लिए कोई उदाहरण ?? –

+0

आप इसे केवल xml से बना सकते हैं, http://developer.android.com/reference/android/util/AttributeSet में देखें।एचटीएमएल और http://stackoverflow.com/questions/5316686/what-is-attributeset-and-how-can-i-use-it भी उपयोगी http://grepcode.com/file/repository.grepcode। com/java/ext/com.google.android/android/4.0.3_r1/एंड्रॉइड/उपयोग/विशेषता Set.java # विशेषताएँ –

+0

मैंने यह लिखा: 'XmlPullParser पार्सर = getResources()। getXml (R.xml.mypagertitlestripattributes); विशेषताएँ विशेषताएँ = Xml.asAttributeSet (पार्सर); पेजर टिटलेस्ट्रिप = नया पेजर टिटलेस्ट्रिप (यह, विशेषताएँ); pagerTitleStrip = (PagerTitleStrip) findViewById (R.id.myStrip); 'व एक्सएमएल' <एक्सएमएल संस्करण = "1.0" एन्कोडिंग = "utf-8"?> \t <आइटम नाम = "android.R .attr.textAppearance "> @ अशक्त \t <आइटम नाम =" android.R.attr.textColor "> # FFFF0000 \t <आइटम नाम =" एंड्रॉयड: textSize "> 30sp ' लेकिन कुछ भी नहीं बदलता है दुर्घटना कोई अपवाद –

9

से: http://developer.android.com/reference/android/support/v4/view/PagerTitleStrip.html

सेट रंग मूल्य सभी प्रदर्शित पृष्ठ शीर्षक के लिए आधार रंग के रूप में इस्तेमाल:

void setTextColor(int color) 

एक करने के लिए डिफ़ॉल्ट पाठ आकार सेट दी गई इकाई और मूल्य:

void setTextSize(int unit, float size) 

कोई ब्रेनर जैसा दिखता है।

PagerTitleStrip titleStrip = (PagerTitleStrip) findViewById(R.id.titleStrip); 
titleStrip.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 24); 
+2

धन्यवाद! क्या यह एक्सएमएल द्वारा भी किया जा सकता है? – Sheharyar

26

textSizeview.PagerTitleStrip की एक्सएमएल संपत्ति के रूप में सीधे उपलब्ध नहीं है।

<android.support.v4.view.PagerTitleStrip 
    android:id="@+id/pager_title_strip" 
    style="@style/viewPagerTitleStrip" <-- added style attribute here 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="top" 
    /> 

तब मैं textSizeमें styles.xml परिभाषित इस प्रकार है::

<style name="viewPagerTitleStrip"> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:textColor">#FFFFFF</item> 
    <item name="android:textSize">14sp</item> <-- my desired text size 
</style> 

यह

हालांकि मैं परोक्ष रूप से शैली विशेषता का उपयोग इस प्रकार इसे सेट अप करने में कामयाब मेरे लिए काम किया

+1

उत्कृष्ट उत्साही! – Bernardo

+0

यह सबसे अच्छा तरीका है! – User3

+1

@ Андрей - यह काम कर रहा है। और सही जवाब के रूप में "सही जांच" की मांग करता है। सबको शुक्रीया। – statosdotcom

3

मैंने इस प्रश्न पर वास्तव में देर से ठोकर खाई, लेकिन अभी तक, टेक्स्ट साइज भविष्यवाणी विकल्प में नहीं है, काम करता है।

<android.support.v4.view.PagerTitleStrip 
     android:id="@+id/pager_title_strip" 
     android:layout_width="match_parent" 
     android:layout_height="50dp" 
     android:layout_gravity="top" 
     android:background="@android:color/holo_blue_dark" 
     android:textSize="18sp" 

     android:textColor="#ffffff" 
     android:paddingTop="4dp" 
     android:paddingBottom="4dp" /> 
0

टेक्स्टिक्स, टेक्स्ट रंग टैब पर लागू नहीं है। मेरे कोड इस प्रकार है:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:id="@+id/relativeLayout"> 

<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/pager" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v4.view.PagerTabStrip 
     android:id="@+id/pager_title_strip" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="top" 
     android:background="#33b5e5" 
     android:textColor="#fff" 
     android:paddingTop="5dp"`enter code here` 
     android:paddingBottom="5dp" /> 

</android.support.v4.view.ViewPager> 

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