我不知道为什么,但当我尝试这样做时,我无法在 EditText 上输入/书写。 EditText 的光标不出现,出现时键盘也不是数字键盘。 我有以下部分代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
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.android.asminhasdespesas.Meta_1Activity">
<TextView android:text="Test:"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TableLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableRow>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:textColor="#000000"
android:cursorVisible="true"
android:ems="10"
android:id="@+id/editTextMeta"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:focusable="true"
android:focusableInTouchMode="true" />
<TextView
android:text="€"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow>
<Button
android:id="@+id/buttonNaoColocar"
android:text="Cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"/>
<Button
android:id="@+id/buttonOk"
android:text="Ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"/>
</TableRow>
</TableLayout>
</LinearLayout>
我尝试用 "android:cursorVisible="true" 甚至 "android:textColor="#000000" 来解决这种情况,我也尝试过 "android:focusable="true" “android:focusableInTouchMode =“true””但问题仍然存在,我无法在EditText上输入。
你能帮我吗?
您可能想要类似的东西:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:textColor="#000000"
android:cursorVisible="true"
android:ems="10"
android:id="@+id/editTextMeta"
android:layout_gravity="center_vertical"
android:focusable="true"
android:focusableInTouchMode="true" />
检查在有 edittext 的地方是否有 setOnKeyListener,如果不需要该事件,请确保返回 false,例如:
OnKeyListener listener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//Do something
return true;
}
return false;
}
};
我是Android开发领域的新手。嗯,我也面临着同样的问题。所以我就设置了
android:text=""
这导致当我在
EditText
中输入文本时出现文本。我不确定为什么会这样,但我只是从个人经验来看
我遇到了同样的问题,然后我从编辑框的父视图(LinearLayout)中删除了 android:focusableInTouchMode="true" ,并且它工作正常
正如其他人所说,上面的代码看起来不会引起问题。这让我想到,当您在 java 文件中创建对象时,您可能会搞乱设置。我会通过从编辑文本字段中删除大量标签来在问题根源处发送文本,并使其尽可能最小,例如
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:id="@+id/editTextMeta"
/>
如果您使用虚拟设备,则只需擦除数据并重试。它会起作用的。