相关疑难解决方法(0)

设置EditText光标颜色

我有这个问题,我在平板电脑项目中使用Android的Holo主题.但是,我在屏幕上有一个具有白色背景的片段.我EditText在这个片段上添加了一个组件.我试图通过设置Holo.Light主题资源的背景来覆盖主题.但是,我的文本光标(克拉)仍然是白色的,因此在屏幕上看不见(我可以在编辑文本字段中隐约发现它...).

有谁知道如何让EditText使用更暗的光标颜色?我已经尝试将EditText的样式设置为"@android:style/Widget.Holo.Light.EditText"没有正面结果.

android android-edittext android-styles

492
推荐指数
15
解决办法
28万
查看次数

EditText选择锚点丢失

我刚注意到EditText我的应用程序中的所有字段都没有正确显示选择锚点.例如:

没有选择锚点的图像

但是,我期望的是出现正确的锚点,例如:

带选择锚点的图像

EditText我的应用中受影响的典型示例:

<EditText
    android:id="@+id/text_message"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@id/button_send"
    android:layout_marginLeft="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:inputType="text|textShortMessage"
    android:layout_marginRight="4dp"
    android:hint="@string/hint_chat_send" />
Run Code Online (Sandbox Code Playgroud)

另请注意,"粘贴"悬停视图在我的应用程序中有一个奇怪的白色边框,但在其他应用程序中它是完全透明的.

我怀疑某种主题问题,因为它影响我的应用程序中的多个屏幕,但我找不到哪些属性可能导致此问题的信息.

UPDATE

所以,我已经花了几太多的时间调试EditText,TextView以及Editor框架类无济于事.一切似乎都按预期运作.

Activity使用以下布局在同一个应用程序中创建了一个新的空白:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin">

    <EditText
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:hint="test" />

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

在我的其他屏幕中,我正在使用AppCompat库及其相关的主题,但在此Activity我将主题和活动改为Activity具有内置材质主题的Android股票:

public class TestActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {

    setTheme(android.R.style.Theme_Material_Light_NoActionBar);
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_test);
}
...
Run Code Online (Sandbox Code Playgroud)

我的理解setTheme是以这种方式调用应该覆盖我的应用程序中的任何可能的自定义styles.xml.不过,我看到了这个:

标记未在模拟器上显示

这里有点不知所措......

android android-edittext

9
推荐指数
1
解决办法
704
查看次数

在KitKat上的空自定义EditText中看不到光标

我创建了一个EditText扩展的自定义类android.widget.EditText.在KitKat和以前的OS版本上运行应用程序时,如果自定义EditText为空,则不会显示光标.输入文本后会出现.

我已尝试在此站点上发布多个解决方案,包括添加android:textCursorDrawable="@null"android:textIsSelectable="true"XML以及以编程方式添加这些属性.这些解决方案都没有奏效.

自定义EditText确实有我正在设置的背景,但它需要在那里.设计约束意味着我必须设置非默认背景.

所以问题是,当自定义EditText为空时如何使光标出现?

以下是自定义视图的XML:

<?xml version="1.0" encoding="utf-8"?>
<com.example.CustomEditText
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:background="@drawable/custom_edit_text_background"
    android:gravity="start"
    android:imeOptions="actionDone"
    android:inputType="textCapSentences|textMultiLine"
    android:maxLines="5"
    android:padding="@dimen/custom_padding"
    android:textAppearance="@style/TextAppearance.AppCompat.Medium"
    android:textColor="@color/custom_color"/>
Run Code Online (Sandbox Code Playgroud)

android android-custom-view android-edittext android-4.4-kitkat

6
推荐指数
1
解决办法
1155
查看次数