文本输入在模拟器中疯狂偏离中心,这正常吗?
Posted
技术标签:
【中文标题】文本输入在模拟器中疯狂偏离中心,这正常吗?【英文标题】:Text input wildly off center in emulator, is it normal? 【发布时间】:2015-09-25 08:19:37 【问题描述】:在运行 API 19 的 android 模拟器中,出于某种原因,放入 EditText 控件的输入奇怪地向下和向左偏离中心,在某些情况下几乎到了不可见的程度。我想知道这是否只是一个通常被忽略的常见错误,或者是否有人可以提出解决此问题的原因和/或解决方案,因为我没有运行此版本的 android 的任何物理设备,并且无法在模拟器。
如果相关,这里是布局的 xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:layout_
android:layout_
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.mydevelopername.myapp.thisactivityname"
android:background="#005b96">
<TableLayout
android:layout_
android:layout_
android:id="@+id/tableLayout5">
<TableRow
android:layout_
android:layout_
android:layout_marginBottom="10dp">
<TextView
android:layout_
android:layout_
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/lbl_volume_ivdrip"
android:id="@+id/lbl_volume"
android:textColor="#b3cde0"
android:textStyle="bold" />
<EditText
android:layout_
android:layout_
android:inputType="number"
android:ems="10"
android:id="@+id/txt_volume"
android:background="#6497b1"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp" />
<Spinner
android:layout_
android:layout_
android:id="@+id/spinner_volume"
android:background="#6497b1" />
</TableRow>
<TableRow
android:layout_
android:layout_
android:layout_marginBottom="10dp">
<TextView
android:layout_
android:layout_
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/lbl_drip_set"
android:id="@+id/lbl_drip_set"
android:textStyle="bold"
android:textColor="#b3cde0" />
<Spinner
android:layout_
android:layout_
android:id="@+id/spinner_drip_set"
android:layout_span="2"
android:background="#6497b1" />
</TableRow>
<TableRow
android:layout_
android:layout_
android:layout_marginBottom="20dp">
<TextView
android:layout_
android:layout_
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/lbl_infuse_time"
android:id="@+id/lbl_infuse_time"
android:textColor="#b3cde0"
android:textStyle="bold" />
<EditText
android:layout_
android:layout_
android:inputType="number"
android:ems="10"
android:id="@+id/txt_infuse_time"
android:background="#6497b1"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp" />
<Spinner
android:layout_
android:layout_
android:id="@+id/spinner_infuse_time"
android:background="#6497b1" />
</TableRow>
</TableLayout>
<TextView
android:layout_
android:layout_
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Large Text"
android:id="@+id/lbl_ivdrip_result"
android:layout_below="@+id/tableLayout5"
android:layout_centerHorizontal="true"
android:textStyle="bold"
android:textColor="#b3cde0"
android:layout_marginBottom="10dp" />
<Button
android:layout_
android:layout_
android:text="New Button"
android:id="@+id/button2"
android:background="#b3cde0"
android:textColor="#011f4b"
android:textStyle="bold"
android:layout_below="@+id/lbl_ivdrip_result"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:onClick="ivdrip_calc" />
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_
android:layout_
ads:adSize="BANNER"
ads:adUnitId="xxxxxxxxxxxxxxxxxxxxxxxx"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
我正在尝试开始进行 Android 开发,但不熟悉该平台中可能存在的与这些模拟器问题相关的一些共性。所以,如果这是一个愚蠢的问题,请接受我的道歉。谢谢!
【问题讨论】:
对于每个 EditText,使用属性android:gravity="start"
将文本定位在开头。
太棒了!谢谢!效果很好。
我已将其添加为答案。如果这解决了您的问题,您可以接受它,以便其他人可以看到。编码愉快!
太棒了!刚刚做了..谢谢你,伙计!!
【参考方案1】:
要定位您的EditText
输入文本,请使用属性android:gravity="X"
,其中X
是您希望其定位的关键字。在您的情况下,使用start
将其放在开头。
【讨论】:
以上是关于文本输入在模拟器中疯狂偏离中心,这正常吗?的主要内容,如果未能解决你的问题,请参考以下文章