Domanda

Ho realizzato i miei stili di pulsanti personalizzati e funzionano splendidi con alcune lingue sui miei telefoni.

Ho fatto strings.xml per DK e UK. Tuttavia, quando ho scelto, ad esempio la Francia come lingua sul mio telefono, i miei pulsanti vengono tagliati in fondo.

Non riesco a capire perché lo faccia.

Qualche idea? Ho provato un eroe HTC, HTC Desire e un Garminasus A10, tutti fanno lo stesso.

Text getting cut off in the bottom...

Modifica layout:

<?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>

Sfondo per il pulsante personalizzato:

Normal button

Immagino che ci sia la possibilità che il mio novepatch sia creato erroneamente, ma sembra giusto quando si sceglie una lingua danese o inglese sui miei telefoni.

È stato utile?

Soluzione

Ok, quindi l'ho risolto da solo.

Dopo aver attraversato il mio file Styles.xml ho scoperto di aver fissato l'altezza dei pulsanti di 25Dip. Questo sembrava giusto quando i miei telefoni usavano una lingua danese o inglese, ma quando lo cambiava in qualsiasi altra lingua il testo del pulsante era tagliato, come mostrato nella foto nel mio post precedente.

Quindi la risposta è rimuovere l'altezza all'interno del file Styles.xml e impostare l'altezza su Wrap_Content.

Non so se questo è un bug nell'API Android, ma lo segnalerò e vedrò cosa succede. È davvero strano che non accada per quelle due lingue ma per ogni altra lingua - ho anche provato ad aggiungere una cartella di valori per un'altra lingua e ho aggiunto gli stessi file dalla cartella valori predefiniti che è stata utilizzata, ma non ha aiutato .

Così tanto per i seguenti tutorial ciecamente sugli interwebs: P

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top