在Android中居中对齐标题栏的文本

时间:2016-09-16 17:09:55

标签: android

我是Android编程的新手,所以我不知道所有的功能。 据我所知,所有生成的活动都有一个标题栏,其中包含app_name字符串资源。我设法改变了唯一活动的标题,但我不明白如何更改标题文本的对齐方式。我的意思是,这样生成:

enter image description here

但我需要它像这样:

enter image description here

2 个答案:

答案 0 :(得分:3)

如果您使用支持工具栏,则方法很简单。 只需在其中添加文本视图并使其居中:

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar_top"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/action_bar_bkgnd"
    app:theme="@style/ToolBarTheme" >


     <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Toolbar Title"
        android:layout_gravity="center"
        android:id="@+id/toolbar_title" />


    </android.support.v7.widget.Toolbar>

在您的活动中,您可以像这样访问标题:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_top);
TextView Title = (TextView) toolbar.findViewById(R.id.toolbar_title);

答案 1 :(得分:2)

要在ABS中设置一个居中的标题(如果你想在默认的ActionBar中使用它,只需删除方法名称中的&#34; support&#34;),你可以这样做:

在您的活动中,使用onCreate()方法:

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

xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="my Title"
        android:textColor="#ffffff"
        android:id="@+id/mytext"
        android:textSize="18sp" />

</LinearLayout>

现在你应该有一个只有标题的Actionbar。如果你想设置一个自定义背景,请在上面的布局中设置它(但不要忘记设置android:layout_height =&#34; match_parent&#34;)。