在Android应用程序的标题栏上居中文本

时间:2014-02-19 20:00:24

标签: android android-titlebar

我在互联网上看了一遍,找不到答案。有没有办法将文本居中在应用程序的标题栏上,而无需创建自定义标题栏?如果是这样,我该怎么做?

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

ViewGroup decorView= (ViewGroup) this.getWindow().getDecorView(); 
LinearLayout root= (LinearLayout) decorView.getChildAt(0); 
FrameLayout titleContainer= (FrameLayout) root.getChildAt(0); 
TextView title= (TextView) titleContainer.getChildAt(0); 
title.setGravity(Gravity.CENTER);

在活动的onCreate()中添加此代码。

答案 1 :(得分:0)

在styles.xml文件中将样式设置为ActionBar标题,

  <item name="android:actionBarStyle">@style/MyActionBar</item>

在MyActionBar中,

<style name="MyActionBar"
       parent="@style/Widget.Holo.ActionBar">
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>
</style>

其中,MyActionBarTitleText是,

<style name="MyActionBarTitleText"
       parent="@style/TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="android:gravity">center</item>
    //and you can add many more customization here like textColor etc
</style>

这是google的doc.