Установите гравитацию заголовка в центр в ActionBarSherlock

Здравствуйте, я хотел бы применить собственный фоновый макет только для моей основной деятельности. Я не мог найти решение. Может кто-нибудь дать мне несколько советов?

хотел бы иметь простое TextView с фоном на панели действий. Это возможно?

Мне удалось удалить значок и установить фоновое изображение. Но как я могу установить гравитацию текста по центру и изменить шрифт?

getSupportActionBar().setDisplayShowHomeEnabled(false);
    getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(myimage)); 

Это должно выглядеть так: введите здесь описание изображения

Спасибо!


person Community    schedule 25.08.2012    source источник


Ответы (1)


Вы должны установить собственный макет для панели действий следующим образом:

getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
getSupportActionBar().setCustomView(R.layout.yourlayout);

В своем макете вы можете добавить TextView и установить его гравитацию на center. Например.:

<LinearLayout 
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000000">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Header!"
        android:id="@+id/mytext"
        android:textColor="#ffffff"
        android:textSize="25dp" />

</LinearLayout>

Затем вы можете установить свой собственный шрифт внутри своей деятельности из своих активов следующим образом:

 TextView txt = (TextView) findViewById(R.id.mytext);  
 Typeface font = Typeface.createFromAsset(getAssets(), "yourfont.ttf");  
 txt.setTypeface(font);  
person Ahmad    schedule 25.08.2012
comment
Если у вас есть вкладки, это ужасно неправильно. Вкладки остаются, но заголовок уходит НИЖЕ - person Adam; 15.04.2013