2017-05-22 3 views
4

Einstellung Padding Wert für meine EditText s. Es funktioniert jedoch nicht sowohl und API-Versionen. Es funktioniert jedoch einwandfrei für , , .EditText Padding-Attribut funktioniert nicht für API 21 und 22

Hier ist meine Codes:

<style name="LoginEditTextStyle"> 
     <item name="android:layout_width">match_parent</item> 
     <item name="android:layout_height">wrap_content</item> 
     <item name="android:layout_gravity">center_horizontal</item> 
     <item name="android:maxLines">1</item> 
     <item name="android:paddingLeft">@dimen/login_text_padding</item> 
     <item name="android:paddingRight">@dimen/login_text_padding</item> 
    </style> 

Das ist mein EditText im Layout xml

<android.support.design.widget.TextInputLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="@dimen/login_container_child_view_top_margin" 
      android:alpha="0"> 

      <EditText 
       android:id="@+id/login_username_editText" 
       style="@style/LoginEditTextStyle" 
       android:hint="@string/user_name" 
       android:inputType="text" 
       /> 

     </android.support.design.widget.TextInputLayout> 

Das Ergebnis für 21 api Version

enter image description here

24 api Version

enter image description here

Ich weiß, es ist ein bug von EditText/spinner Ansicht Füllwerts von xml einzustellen.

Ich weiß, dass es eine Lösung für dieses Problem gibt, wie das Setzen von Auffüllwerten programmatisch. Aber es funktioniert nicht für mich.

zum Beispiel: this accepted solution doesn't work for me

int paddingLeft = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 40, getResources().getDisplayMetrics()); 
     int paddingRight = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 55, getResources().getDisplayMetrics()); 
     int paddingTop = editText.getPaddingTop(); 
     int paddingBottom = editText.getPaddingBottom(); 
     editText.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom); 
+0

funktioniert Padding direkt zu bearbeiten Text bearbeiten? –

+0

nein !! Es funktioniert nicht – ziLk

Antwort

0

stand ich das gleiche Problem. paddingLeft funktioniert nicht auf Android 5.1.1-Geräten.

Fügen Sie stattdessen paddingStart hinzu, was das Problem für mich gelöst hat.

Bitte versuchen Sie es.

Verwandte Themen