Я работаю над ящиком навигации Я хочу, чтобы он выглядел как тот, что был в Gmail. Но у меня есть некоторые проблемы с кругом с буквой в середине моего TextView. У меня есть андроид: гравитация установлена в центр, но она все еще не совсем посередине.Текст текста TextView Android точно
Немного перемещается на дно и, следовательно, выглядит ужасно.
Я также попытался создать пользовательский вид, но у меня такая же проблема.
Кто-нибудь знает, как это решить?
header.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="300dp"
android:layout_height="168dp">
<ImageView
android:layout_width="300dp"
android:layout_height="168dp"
android:src="@mipmap/header_background"
android:scaleType="fitXY"
android:id="@+id/imageView2" />
<TextView
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginLeft="16dp"
android:layout_marginBottom="8dp"
android:layout_above="@+id/subtitle"
android:gravity="center"
android:text="M"
android:textAllCaps="true"
android:textSize="48sp"
android:textColor="@color/actionbar"
android:fontFamily="sans-serif-medium"
android:background="@drawable/circle" />
<RelativeLayout
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_width="match_parent"
android:layout_height="56dp"
android:layout_alignParentBottom="true"
android:id="@+id/subtitle">
<LinearLayout
android:layout_centerVertical="true"
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:id="@+id/name"
android:text="My Name"
android:textSize="14sp"
android:textColor="#FFFFFF"
android:fontFamily="sans-serif-medium"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/name"
android:text="[email protected]"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:fontFamily="sans-serif"/>
</LinearLayout>
</RelativeLayout>
circle.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@android:color/white"/>
<size
android:width="64dp"
android:height="64dp"/>
</shape>
Благодаря
EDIT: Я изменил «center_h «по горизонтали» до «центра», так как это то, что у меня было в моем коде, когда я снял снимок экрана
Я думаю, вы имеете в виду логотип M? Вы, вероятно, не должны использовать текстовое представление для этого, это должно быть изображение. –
@GabeSechan да, я имею в виду M. Если бы это был образ, я должен был сделать много изображений - по одному для каждой буквы. должен быть более эффективный способ. –
Хорошо, я думал, что это был какой-то логотип. Вам может потребоваться перейти к пользовательскому виду, чтобы лучше контролировать чертеж.Рисование текста на самом деле довольно сложно - например, если вы хотите сосредоточиться на чем-то, вы центрируете базовый уровень восхождения или спуска на восхождение? Выберите неправильный, и вы не получите ожидаемого эффекта. –