Doesn\'t work EditText padding in the API 21. I try to do it in empty project, only with single editText, but it still doesn\'t work.
Set padding programmatically works
Solved it in styles, using android standart edittext:
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:editTextStyle">@android:style/Widget.EditText</item>
</style>
Not really the best way to work around the problem, but it works for me: you can set android:layout_height attribute to some fixed value and set android:gravity to center or center_vertical
<EditText
...
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center"
.../>
This is android bug. In future it will be fix.
Bug report on google code.
Just replace android:paddingLeft
with android:paddingStart
, as should be anyway and fixes this bug on those devices.
Try to give padding programmatically by using method setLayoutParams() it will work i am hopeful Ref: Example
Solved it by creating a custom edittext with padding and use it in xml.
public class MyEditTextView extends EditText{
public MyEditTextView(Context context) {
super(context);
init();
}
public MyEditTextView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public MyEditTextView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
private void init(){
int paddingLeftRight = (int) getResources().getDimension(R.dimen.edittext_padding);
int topPadding = this.getPaddingTop();
int bottomPadding = this.getPaddingBottom();
setPadding(paddingLeftRight, topPadding, paddingLeftRight, bottomPadding);
}
}