Edittext游标在android 4.0中是不可见的

时间:2013-02-26 16:05:20

标签: android android-edittext

我在android 4.0中有一个编辑文本输入,并且Cursor没有显示在其中。

什么可以使光标不出现在输入字段中?

11 个答案:

答案 0 :(得分:57)

制作android:cursorVisible="true"

如果您已使用android:textColor,请将android:textCursorDrawable属性设置为@null

快乐的编码;)

答案 1 :(得分:9)

我遇到了类似的问题但是因为光标实际上是白色而我有白色背景。我需要能够以某种方式在代码中将光标更改为黑色并使用此方法。

我创建了一个名为textbox.axml的布局资源,其中包含此

   <?xml version="1.0" encoding="utf-8"?>
   <EditText xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="This is a template"
    android:background="#ffffff"
    android:textColor="#000000"
    android:cursorVisible="true"
    android:textCursorDrawable="@null" />

然后我在代码中应用了这个布局(C#,因为我正在使用Xamarin)因此

    EditText txtCompletionDate = (EditText)LayoutInflater.Inflate(Resource.Layout.textbox, null);

但它在Java中类似。

答案 2 :(得分:4)

我发生了同样的问题 - 光标只有在用户输入一些字符后才会显示。我尝试了此处列出的解决方案,但在我的设备上没有任何成功。实际上对我有用的是将空白文本设置为我的edittext:

EditText editText = findViewById(R.id.edit_text);
editText.setText("");

这&#34;假货&#34;用户输入,并出现光标。

答案 3 :(得分:4)

我的问题是我使用的是AppCompat主题,但我有一些自定义视图类扩展了需要扩展AppCompatEditText的EditText,以便正确应用AppCompat样式。

答案 4 :(得分:3)

在xml文件中为您的编辑文本添加此行。

android:textCursorDrawable="@null"

答案 5 :(得分:1)

只需将自己的个人修复程序添加到可能有用的任何人身上。我曾在这里尝试过所有内容,但强迫android:background="@null"仅在右对齐TextEdit的末尾导致一个非常小的光标(在其他地方正常工作)。

只需在android:padding="1dp"中添加TextEdit即可解决问题。

答案 6 :(得分:0)

在xml文件中为编辑文本添加此行。

android:cursorVisible="true"

答案 7 :(得分:0)

我发现是什么导致它发生在我身上。

您需要从应用程序的主题继承它。我不确定订单项应该是什么,但是android:Theme让它如此继承才能完成这一操作。

使用默认AppBaseTheme会有效(它的父级为android:Theme.Light。)

使用AppBaseThemeandroid:theme="@style/AppBaseTheme"放入清单中的应用标记。你也可以使用自定义样式和多级继承,只要其中一个在样式标记中有parent="android:Theme"。就像我说的那样可能没有它,只使用某些行项目但我不知道那会是什么。

如果您不需要自定义主题,可以使用

android:theme="@android:style/Theme"

答案 8 :(得分:0)

在我的情况下,如果用户语言是英语,则光标可见,但如果他将语言更改为阿拉伯语,则其不可见。

为了解决这个问题,我在自定义drawable for cursor上创建了。

cursur shap at drawable / black_cursor.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
    <solid android:color="#a8a8a8"/><!-- This is the exact color of android edit text Hint -->
    <size android:width="1dp" />
</shape>

编辑文字:

<EditText
    android:id="@+id/user_name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="20sp"
    android:textCursorDrawable="@drawable/black_cursor"
    />

答案 9 :(得分:0)

如上所述,这里是实际的线路   机器人:textCursorDrawable =&#34; @空&#34;

 <EditText
               android:textCursorDrawable="@null"
                android:imeOptions="actionNext"
                android:id="@+id/edSMobile"
                 android:layout_width="match_parent"
                android:layout_height="wrap_content"                    
                android:background="@drawable/edit_corner"                    
                android:inputType="phone" />

答案 10 :(得分:0)

如果EditText的背景可绘制边框带有边框,则光标显示在边框中,并且看起来不可见。为了纠正问题,将EditText中的填充设置为少量,例如5dp