Форматирование и выравнивание строкового текста в кнопке Android

#android #xml #android-layout

#Android #xml #android-макет

Вопрос:

Я пытаюсь сдвинуть и отформатировать текст строки внутри моей кнопки Android по центру или по центру справа. Я удивлен, что не смог найти решение.

В любом случае, вот как выглядит мой XML-экран:

Кнопка приложения

Многие решения требуют от меня использования макета gravity. Однако я использовал layout gravity для форматирования своего значка, поэтому я не уверен, как это исправить в этом случае.

Вот мой XML-файл:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@ id/layout"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:weightSum="1">

    <TableLayout android:id="@ id/tableLayout1"
                 android:layout_height="wrap_content"
                 android:layout_width="fill_parent" />

    <Button
        android:id="@ id/block_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff5ac3ff"
        android:drawableLeft="@drawable/ic_action"
        android:gravity="left|center_vertical"
        android:text="@string/block_apps"
        android:textSize="22sp"

        style="?android:attr/borderlessButtonStyle"
        android:layout_weight="0.09"/>

    <Button
        android:id="@ id/security_settings_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff5ac3ff"
        style="?android:attr/borderlessButtonStyle"
        android:layout_weight="0.09"/>

    <Button
        android:id="@ id/blacklist_whitelist_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff5ac3ff"
        style="?android:attr/borderlessButtonStyle"
        android:layout_weight="0.09"/>


</LinearLayout>
  

Комментарии:

1. Обратите внимание, что layout_gravity это не то же самое, что gravity .

Ответ №1:

Вот так:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@ id/layout"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:weightSum="1">

    <TableLayout android:id="@ id/tableLayout1"
                 android:layout_height="wrap_content"
                 android:layout_width="fill_parent" />

    <Button
        android:id="@ id/block_button"
        style="?android:attr/borderlessButtonStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="right|center_vertical"
        android:layout_weight="0.09"
        android:background="#ff5ac3ff"
        android:drawableLeft="@drawable/ic_launcher"
        android:gravity="right|center_vertical"
        android:text="@string/block_apps"
        android:textSize="22sp" />

    <Button
        android:id="@ id/security_settings_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff5ac3ff"
        style="?android:attr/borderlessButtonStyle"
        android:layout_weight="0.09"/>

    <Button
        android:id="@ id/blacklist_whitelist_button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff5ac3ff"
        style="?android:attr/borderlessButtonStyle"
        android:layout_weight="0.09"/>


</LinearLayout>
  

Вывод:

введите описание изображения здесь

Ответ №2:

 Try this way,hope this will help you to solve your problem.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@ id/layout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TableLayout
        android:id="@ id/tableLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="#ff5ac3ff"
        android:orientation="vertical"
        android:gravity="right">
        <Button
            android:id="@ id/block_button"
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:background="#ff5ac3ff"
            android:drawableLeft="@drawable/ic_action"
            android:text="@string/block_apps"
            android:textSize="22sp"
            style="?android:attr/borderlessButtonStyle"
            android:layout_weight="1"/>

        <Button
            android:id="@ id/security_settings_button"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:background="#ff5ac3ff"
            style="?android:attr/borderlessButtonStyle"
            android:layout_weight="1"/>

        <Button
            android:id="@ id/blacklist_whitelist_button"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:background="#ff5ac3ff"
            style="?android:attr/borderlessButtonStyle"
            android:layout_weight="1"/>
    </LinearLayout>

</LinearLayout>