При смене языка мои пользовательские кнопки обрезают часть текста - PullRequest
0 голосов
/ 12 сентября 2011

Я создал свои собственные стили кнопок, и они прекрасно работают с некоторыми языками на моих телефонах.

Я создал strings.xml для DK и UK.Однако, когда я выбрал, например, язык как французский на моем телефоне, мои кнопки обрезались внизу.

Не могу понять, почему это происходит.

Есть идеи?Я пробовал на HTC Hero, HTC Desire и GarminAsus A10, все делает то же самое.

Text getting cut off in the bottom...

РЕДАКТИРОВАТЬ макет:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:background="@drawable/bg"
    android:padding="0dip">
    <LinearLayout android:id="@+id/linearLayout1"
        android:orientation="vertical" android:gravity="center"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:layout_marginLeft="40dip" android:layout_marginRight="40dip">
        <TextView android:layout_height="wrap_content"
            android:layout_width="fill_parent" android:id="@+id/hintUsername"
            android:text="@string/hintUsernameText" style="@style/CodeFont"></TextView>
        <EditText android:id="@+id/unameEditText"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:inputType="textPersonName" android:hint="@string/usernameHint">
            <requestFocus></requestFocus>
        </EditText>
        <TextView android:layout_height="wrap_content" android:id="@+id/textView1"
            android:layout_width="fill_parent" android:text="@string/hintPasswordText"
            style="@style/CodeFont"></TextView>
        <EditText android:id="@+id/pwEditText" android:layout_height="wrap_content"
            android:layout_width="fill_parent" android:inputType="textPassword"
            android:hint="@string/pwHint"></EditText>
        <CheckBox android:layout_height="wrap_content" android:id="@+id/rememberLoginCheckbox"
            android:text="@string/rememberLoginCheckbox" android:layout_width="fill_parent"
            android:gravity="center" style="@style/CodeFont"></CheckBox>
        <Button android:id="@+id/loginButton" android:text="@string/logonButton"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:background="@drawable/btn_custom" android:textSize="18dp"></Button>
        <TextView android:id="@+id/errorTextView" android:text=""
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:textColor="#FF0000"></TextView>
    </LinearLayout>
</LinearLayout>

Фон длянастраиваемая кнопка:

Normal button

Я полагаю, есть вероятность, что мой девятипатч был создан неправильно, но он выглядит правильно при выборе датского или английского языка на моих телефонах.

1 Ответ

1 голос
/ 18 сентября 2011

Хорошо, так что я решил это сам.

После просмотра моего файла styles.xml я обнаружил, что я зафиксировал высоту кнопок на 25 dip.Это выглядело правильно, когда в моих телефонах использовался датский или английский язык, но при переключении на любой другой язык текст кнопки обрезался, как показано на рисунке в моем предыдущем сообщении.

Поэтому ответ состоит в том, чтобы удалитьвысота внутри файла styles.xml и просто установите высоту wrap_content.

Я не знаю, является ли это ошибкой в ​​API Android, но я собираюсь сообщить об этом и посмотреть, что произойдет.Это действительно странно, что это происходит не для этих двух языков, а для любого другого языка - я даже пытался добавить папку значений для другого языка и добавил те же файлы из используемой папки значений по умолчанию, но это не помогло.

Так много для слепого следования урокам на паутинах: P

...