Как установить TextStyle для PagerTabStrip в Bold?

м используюPagerTabStrip вViewPager показать заголовок каждой страницы. Вот мой код XML:



    
    
    


Я хочу, чтобы установить textStyle жирным шрифтом вPagerTabStrip как это:android:textStyle="bold", Но это невозможно вPagerTabStrip, Похоже, он имеет толькоtextcolor свойство для текста. Каким образом я могу установить стиль жирным шрифтом?

 Jainendra12 нояб. 2012 г., 05:49
@CommonsWare О, я забыл удалить эту строку во время публикации вопроса. Я пытался добавить стиль в@style/TitleStripTextAppearance но я'я не уверен, будет ли это работать или нет?
 CommonsWare09 нояб. 2012 г., 13:46
Что у вас есть?@style/TitleStripTextAppearance

Ответы на вопрос(3)

Если ты'Мне бы хотелось, чтобы стиль заголовка центральной вкладки отличался от других, тогда выВам нужно будет использовать отражение:

try {
    final Class pagerTitleStripClass = PagerTitleStrip.class;
    final Field mCurrTextField = pagerTitleStripClass.getDeclaredField("mCurrText");
    mCurrTextField.setAccessible(true);

    // mTitle is my class's PagerTabStrip member variable
    final TextView mCurrText = (TextView) mCurrTextField.get(mTitle);
    mCurrText.setTypeface(Typeface.DEFAULT_BOLD);
} catch (final Exception e) {
    Log.w(TAG, "Exception when styling currently selected title!", e);
}

К сожалению, это решение может потенциально не работать, когда обновления дляБиблиотека поддержки Android выпущены (как этогдеPagerTitleStrip класс из). В частности, этот пример кода работает сРедакция 20.

 kamathln08 дек. 2017 г., 02:52
Лично я бы нене рекомендую использовать отражения для такого родатрюки", Существует причина, по которой он является закрытым - он может измениться в любое время - даже при разных фиксациях одной и той же ревизии. Отражение следует использовать для метауровневых вещей, таких как написание фреймворков и тому подобное.

PagerTabStrip не делаетt aceppts textAppearance.

Как сказал @Justin выше, но на xml поставил:

style="@style/PagerTabStripText"

не:

android:textAppearance="@style/PagerTabStripText"

Решение Вопроса

Что вам нужно сделать, это создать стиль для текста, а затем использовать атрибут android: textAppearance ...

Возможно, что-то вроде этого:

 
      14sp
      bold
      #a4c639
 

И затем в вашем PagerTabStrip XML сделайте это:

 
 ambit26 янв. 2013 г., 11:41
Мне нужно использовать пользовательский шрифт для моего pagertabstrip. Есть идеи, как это использовать?
 Braj23 июл. 2014 г., 08:43
@Justin -textMultiLine собственность не работает таким образом. Любой другой путь?
 Eugene Chumak25 янв. 2013 г., 13:01
Кстати, eclipse не выполняет автозаполнение Android: textAppearance внутри android.support.v4.view.PagerTabStrip. Но не смущайтесь, textAppearance работает для PagerTabStrip.
 therealprashant10 авг. 2015 г., 07:55
андроид студия не имеет текста
 Charles Madere03 окт. 2014 г., 22:33
Любая идея о том, как конкретно стилизовать заголовок центральной вкладки? Как и вНазвание текущей вкладки будет выделено жирным шрифтом, а остальные будут нормальными?

Ваш ответ на вопрос