Android 填充不';有些设备不能工作

Android 填充不';有些设备不能工作,android,android-layout,padding,android-xml,Android,Android Layout,Padding,Android Xml,在将填充设置为EditText的过程中,我遇到了一个奇怪的问题。xml如下所示: <EditText android:layout_width="270dp" android:layout_height="55dp" android:ems="10" android:id="@+id/etEmail" android:textStyle="bold" android:layout_gravity="center_vertical" a

在将填充设置为
EditText
的过程中,我遇到了一个奇怪的问题。xml如下所示:

<EditText
    android:layout_width="270dp"
    android:layout_height="55dp"
    android:ems="10"
    android:id="@+id/etEmail"
    android:textStyle="bold"
    android:layout_gravity="center_vertical"
    android:textColor="#FFFFFF"
    android:hint="Or Use your Email"
    android:inputType="textEmailAddress"
    android:layout_alignLeft="@+id/textView6"
    android:layout_alignStart="@+id/textView6"
    android:textColorHint="#FFFFFF"
    android:background="@drawable/line_white"
    android:paddingLeft="16.5dp"
    android:layout_marginTop="10dp"
    android:paddingRight="2dp" />

以下是三星Note2(Android 5.0.1)的屏幕截图:

。。。和LG G3(安卓4.4.2):

如您所见,
android:paddingLeft
对LG不起作用

原因可能是什么

谢谢


UPD: 布局边界(LG):


这是dpi设备的问题。利用“dimen”文件夹,为不同的设备屏幕尺寸提供不同的dp。当然这会解决你的问题

android:paddingLeft="@dimen/yourValueName"

更新到API级别21后,通过xml进行编辑文本填充不起作用。
但是,如果EditText填充是以编程方式定义的,则它是有效的

editText.setPadding(10, 0, 0, 0);
您可以在上跟踪此问题


还有一些其他替代方案,在问题跟踪线程中讨论。

我在HTC One X上注意到了这一点。这并不能解决您的特定问题,但将
paddingStart
更改为
paddingLeft
对我有效。

它必须有效。。由于设备的dpi不同,填充会有所不同。。试着用一个大值,比如50而不是16.5dp来检查它是否有效?如果需要,请告诉我works@Salmaan结果是一样的。在三星上运行良好,但LG参数被忽略。转到开发者选项并检查显示布局边界。发布你的截图之后…@Salmaan该帖子已更新。刚刚发现API级别21存在问题。按程序做,它会很好地工作。设置填充(20,20,20,20);