Как я могу предотвратить перенос слов на элементы панели вкладок в теме Holo? - PullRequest
3 голосов
/ 02 апреля 2012

Мое приложение работает с Theme.Light на уровне API 10 и ниже и Holo.Light на уровне API 11 и выше.Панель вкладок в Theme Light отображает все элементы без переноса слов, но тема Holo переносит их в середину слова:

holo theme screenshot

Как я могу предотвратить это?

Ответы [ 2 ]

0 голосов
/ 10 апреля 2014

Вы можете управлять этим, с

Переопределите этот класс в проекте ActionBarSherlock ./ActionbarSherlock/src/com/actionbarsherlock/internal/widget/ScrollingTabContainerView.java

@Override
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);

    if (mParent.mMaxTabWidth > 0 && getMeasuredWidth() > mParent.mMaxTabWidth) {

        //comment this line

       // super.onMeasure(MeasureSpec.makeMeasureSpec(mParent.mMaxTabWidth, MeasureSpec.EXACTLY),heightMeasureSpec);

       //now do nothing , override by me for ActionBarTabs not rezize never
      //this method manage the size tabs, if you want you can count caracters to resize the size width
    }
}
0 голосов
/ 02 апреля 2012

Вы пытались использовать атрибут android:ellipsize в xml или setEllipsize(TextUtils.TruncateAt) в представлении, содержащем текст?Если представление наследует или является текстовым представлением, которое должно работать.«Если установлено, слова, длина которых превышает ширину представления, будут иметь эллиптический размер вместо разрыва в середине».Возможно, вы можете установить TextView как TabSpec, используя public TabHost.TabSpec setIndicator (View view)

...