如何使EDITTEXT大小原地不动? Android的
-
22-09-2019 - |
题
我知道这使得在EDITTEXT的左侧部分文本“disapear”保持一行的属性,(SINGLELINE =“真”)。但我的问题是,当我填写的EditText显示视图之前......在这种情况下,我的edittexts都去屏幕的出... 有任何想法吗? THX!
这是什么填补了空白EDITTEXT时得到的。一切原地踏步,和文本消失在其左侧
和当我充液从我的DB
这里是的EditText的代码:
<EditText android:id="@+id/InscripChampNom"
android:layout_height="wrap_content" android:textSize="14px"
android:inputType="textPersonName" android:layout_marginRight="20dip"
android:singleLine="true" android:textColor="@color/background"></EditText>
在tableLayout定义如下:
<TableLayout android:layout_width="fill_parent"
android:stretchColumns="1" android:layout_height="fill_parent">
我还试图与属性
android:layout_width="fill_parent"
和
android:layout_width="wrap_content"
在所有没有成功...
也许有输入类型和单线之间的冲突?
编辑这里是我的问题的全码:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:scrollbars="vertical" android:background="@color/backgroundzen"
android:layout_gravity="fill" android:layout_height="fill_parent"
android:layout_width="fill_parent" android:paddingLeft="6dip"
android:paddingRight="6dip">
<TableLayout style="@style/LayoutWhiteBgrdFillWrap"
android:paddingLeft="6dip" android:paddingRight="6dip"
android:stretchColumns="1">
<TextView android:id="@+id/NomFormationConference" style="@style/textViewTitleRedzenBold"
android:text="Nom conférence"></TextView>
<TableRow android:layout_margin="2dip">
<TextView android:id="@+id/DateSession" android:textColor="@color/textezenrouge"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:text="date début"></TextView>
<TextView android:id="@+id/speakerConf" android:textColor="@color/textezenrouge"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:text="speaker"></TextView>
</TableRow>
<TableRow android:layout_margin="2dip">
<TextView android:id="@+id/InscripNom" android:layout_width="wrap_content"
android:textColor="@color/background" android:layout_height="wrap_content"
android:text="@string/nom" android:textStyle="bold"></TextView>
<EditText android:id="@+id/InscripChampNom"
android:layout_height="wrap_content" android:textSize="14sp"
android:layout_width="fill_parent" android:inputType="textPersonName"
android:layout_marginRight="20dip" android:hint="@string/nomh"
android:singleLine="true" android:textColor="@color/background"></EditText>
</TableRow>
//最后tablerow的重复5次与各种数据的内部。
的样式是类似的:
<style name="LayoutWhiteBgrdFillWrap">
<item name="android:background">@color/backgroundzen</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">fill_parent</item>
</style>
这就是我如何填写EditText
:
misc = SQLiteDatabase.openDatabase("/data/data/com.mobile.zen/databases/" + Constants.UNVERSIONNED_DATABASE, null,
SQLiteDatabase.OPEN_READONLY);
Cursor c = misc.query("MISC", null, null, null, null, null, null);
if (c.moveToFirst()) {
do {
nomInscrit.setText(c.getString(1));
} while (c.moveToNext());
}
c.close();
misc.close();
解决方案
尝试添加android:shrinkColumns="1"
到您TableLayout
告诉它,它可以强制EditText
项变小以适应屏幕的宽度。
其他提示
您对您的android:layout_width
没有EditText
属性。添加一个或以其它方式限制该字段可以多久(例如,如果它是在一个RelativeLayout
,使用android:layout_alignParentRight="true"
)。
我只是试图重现您的问题,但我不能。
检查这样的:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:stretchColumns="1"
android:layout_height="fill_parent">
<EditText android:id="@+id/a" android:layout_height="wrap_content"
android:textSize="14px" android:inputType="textPersonName"
android:layout_marginRight="20dip" android:singleLine="true"
android:textColor="@android:color/black"></EditText>
<EditText android:id="@+id/b" android:layout_height="wrap_content"
android:textSize="14px" android:inputType="textPersonName"
android:layout_marginRight="20dip" android:singleLine="true"
android:textColor="@android:color/black"></EditText>
<EditText android:id="@+id/c" android:layout_height="wrap_content"
android:textSize="14px" android:inputType="textPersonName"
android:layout_marginRight="20dip" android:singleLine="true"
android:textColor="@android:color/black"></EditText>
</TableLayout>
可能在Android上可能的错误。但要解决它可以是一个方法是指定一些值作为宽度与编辑文本框并指定
机器人:stretchColumns = “1”
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:scrollbars="vertical" android:background="#ffffff"
android:layout_gravity="fill" android:layout_height="fill_parent"
android:layout_width="fill_parent" android:paddingLeft="6dip">
<TableLayout android:layout_below="@+id/reltable1" android:id="@+id/tablelayout_main" android:layout_width="fill_parent" android:layout_marginRight="10dip" android:layout_marginBottom="10dip" android:layout_height="fill_parent" android:layout_centerInParent="true" android:gravity="center" android:stretchColumns="1">
<TextView android:id="@+id/NomFormationConference"
android:text="Nom conférence"></TextView>
<TableRow android:layout_height="wrap_content" android:layout_width="fill_parent">
<TextView android:id="@+id/DateSession"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:text="date début"></TextView>
<TextView android:id="@+id/speakerConf"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:text="speaker"></TextView>
</TableRow>
<TableRow android:layout_height="wrap_content" android:layout_width="fill_parent">
<TextView android:id="@+id/InscripNom" android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="nom" android:textStyle="bold"></TextView>
<EditText android:id="@+id/InscripChampNom"
android:textSize="14sp"
android:inputType="textPersonName"
android:hint="nomh" android:text="dsfdsfdsfsdfsdfsssssssssssssssssssssssssssssss" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:layout_width="220dip" android:ellipsize="end"></EditText>
</TableRow>
</TableLayout>
</ScrollView>
我加的高度和宽度属性的TableRow
我不认为tablelayout滚动型作品。 我有一个设置为这样,它不会抛出错误 但模拟器只是不加载应用程序,并说停止工作。 我删除了滚动视图和东西开始工作。
我认为这个问题是tablelayout有它自己的滚动条 它不需要滚动视图,也许这两个矛盾。
<EditText
android:id="@+id/InscripChampNom"
android:layout_height="wrap_content"
android:textSize="14px"
android:inputType="none"
android:layout_marginRight="20dip"
android:singleLine="true"
android:textColor="@color/background"
android:editable="false"
android:ellipsize="end">
</EditText>