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

android应用程序标题栏上的居中文本,android,android-titlebar,Android,Android Titlebar,我在互联网上找遍了,找不到答案。有没有一种方法可以在不创建自定义标题栏的情况下将文本置于应用程序标题栏的中心?如果是的话,我会怎么做 谢谢你的帮助 ViewGroup decorView= (ViewGroup) this.getWindow().getDecorView(); LinearLayout root= (LinearLayout) decorView.getChildAt(0); FrameLayout titleContainer= (FrameLayout) root.ge

我在互联网上找遍了,找不到答案。有没有一种方法可以在不创建自定义标题栏的情况下将文本置于应用程序标题栏的中心?如果是的话,我会怎么做

谢谢你的帮助

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()中添加此代码。

将style设置为styles.xml文件中的ActionBar标题,如下所示:

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

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

@样式/MyActionBartitletText
其中,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>

居中
//您还可以在这里添加更多自定义项,如textColor等

这是谷歌的

,这似乎是一个中心化的工作很多。:)好的,谢谢你和@user3292108!我会试试。乍一看是的,但随着你的熟悉,你会继续定制actionbar,因为它提供了很大的灵活性。:)让我知道什么对你有效。迪菲的很好。当我需要更多的定制时,我会使用你的。谢谢当我添加您的代码时,我可以在模拟器上运行应用程序,但不能在设备上运行。你知道为什么吗?谢谢你。我试过了,它只是在电话上打不开,说“不幸的是,应用程序停止了”。Logcat什么也没表现出来。当我把电话连接到我的电脑上时,我根本没能让它工作。这令人沮丧。