工具栏内的文本未居中
The text inside the Toolbar is not centered
我在XML
中编写了以下代码。但是 RelativeLayout
不完全适合 Toolbar
并且离左边大约 10dp。
XML
的代码:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:background="@color/colorAccent">
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:src="@drawable/supporter"
android:layout_alignParentRight="true"
/>
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/yekan"
android:text="@string/appnameForUsers"
android:textColor="@android:color/white"
android:textSize="24sp"
android:layout_centerHorizontal="true"
/>
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:src="@drawable/supporter"
android:layout_alignParentLeft="true"
/>
</RelativeLayout>
</android.support.v7.widget.Toolbar>
如果您想从 ToolBar
中删除默认填充
在ToolBar
中使用以下代码
<android.support.v7.widget.Toolbar
.............
android:contentInsetStart="0dp"
android:contentInsetLeft="0dp"
android:contentInsetEnd="0dp"
android:contentInsetRight="0dp"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
app:contentInsetStart="0dp"
.................
/>
您需要告诉您的 TextView 将文本移动到 left/start 并使其使用整个 space。如果不需要,请将其移至左侧。
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="match_parent"
android:gravity="start"
....
您需要添加标签 app:contentInsetStart="0dp"
以删除 Toolbar
左侧的默认填充。
您还可以添加其他标签,如 app:contentInsetEnd="0dp"
如果您正在向右填充,但在您的情况下,不需要。
您必须将此标签添加到您的 Toolbar
。
只需将您的代码替换为以下代码片段即可。它会解决你的问题。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorAccent"
android:gravity="center">
<ImageView
android:id="@+id/img_1"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentRight="true"
android:src="@drawable/supporter" />
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toStartOf="@+id/img_1"
android:layout_toLeftOf="@+id/img_1"
android:layout_toEndOf="@+id/img_2"
android:layout_toRightOf="@+id/img_2"
android:layout_centerHorizontal="true"
android:text="@string/appnameForUsers"
android:textColor="@android:color/white"
android:textSize="24sp" />
<ImageView
android:id="@+id/img_2"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentLeft="true"
android:src="@drawable/supporter" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
app:contentInsetStart="0dp"
在您的工具栏中添加此属性
我在XML
中编写了以下代码。但是 RelativeLayout
不完全适合 Toolbar
并且离左边大约 10dp。
XML
的代码:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:background="@color/colorAccent">
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:src="@drawable/supporter"
android:layout_alignParentRight="true"
/>
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/yekan"
android:text="@string/appnameForUsers"
android:textColor="@android:color/white"
android:textSize="24sp"
android:layout_centerHorizontal="true"
/>
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:src="@drawable/supporter"
android:layout_alignParentLeft="true"
/>
</RelativeLayout>
</android.support.v7.widget.Toolbar>
如果您想从 ToolBar
在ToolBar
<android.support.v7.widget.Toolbar
.............
android:contentInsetStart="0dp"
android:contentInsetLeft="0dp"
android:contentInsetEnd="0dp"
android:contentInsetRight="0dp"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
app:contentInsetStart="0dp"
.................
/>
您需要告诉您的 TextView 将文本移动到 left/start 并使其使用整个 space。如果不需要,请将其移至左侧。
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="match_parent"
android:gravity="start"
....
您需要添加标签 app:contentInsetStart="0dp"
以删除 Toolbar
左侧的默认填充。
您还可以添加其他标签,如 app:contentInsetEnd="0dp"
如果您正在向右填充,但在您的情况下,不需要。
您必须将此标签添加到您的 Toolbar
。
只需将您的代码替换为以下代码片段即可。它会解决你的问题。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorAccent"
android:gravity="center">
<ImageView
android:id="@+id/img_1"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentRight="true"
android:src="@drawable/supporter" />
<android.support.v7.widget.AppCompatTextView
android:id="@+id/title_toolbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toStartOf="@+id/img_1"
android:layout_toLeftOf="@+id/img_1"
android:layout_toEndOf="@+id/img_2"
android:layout_toRightOf="@+id/img_2"
android:layout_centerHorizontal="true"
android:text="@string/appnameForUsers"
android:textColor="@android:color/white"
android:textSize="24sp" />
<ImageView
android:id="@+id/img_2"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_alignParentLeft="true"
android:src="@drawable/supporter" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
app:contentInsetStart="0dp"
在您的工具栏中添加此属性