首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

settext之后的Android edittext光标错误

是指在使用EditText控件的setText方法设置文本内容后,光标位置不正确的问题。

解决该问题的方法有以下几种:

  1. 使用setSelection方法手动设置光标位置。可以在setText之后调用setSelection方法,将光标位置设置到期望的位置。例如,如果希望将光标设置到文本末尾,可以使用editText.setSelection(editText.getText().length())。
  2. 使用post方法延迟设置光标位置。有时候在setText之后立即调用setSelection可能会不起作用,可以通过将设置光标位置的代码放在post方法中执行,以确保在视图更新后再进行光标位置的设置。例如:editText.post(new Runnable() { @Override public void run() { editText.setSelection(editText.getText().length()); } });
  3. 使用requestFocus方法获取焦点。在setText之后,可以调用editText.requestFocus()方法使EditText获取焦点,然后再调用setSelection方法设置光标位置。

应用场景: 在涉及到动态设置EditText文本内容并要求正确的光标位置时,可以使用上述方法解决settext之后的Android edittext光标错误问题。

推荐腾讯云相关产品和产品介绍链接地址: 腾讯云提供了丰富的云计算服务和解决方案,其中与移动开发和应用相关的产品有腾讯移动分析(Mobile Analytics)、腾讯移动推送(Mobile Push)、腾讯移动测试(Mobile Testing)等。你可以通过访问腾讯云官方网站(https://cloud.tencent.com/)了解更多相关产品信息和详细介绍。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Android 通过 xml 和 Java 两种方式调整 EditText 光标样式

    和尚我有个小需求是根据主题配色更改 EditText 中输入框光标的颜色,网上查了一些资料,大部分都是直接用的 xml 方式在做调整,但是和尚我需要的是在 Java 代码中动态调整光标颜色。...---- 和尚我的测试步骤如下: 设置一个默认的 EditText,默认光标颜色为程序对应的 colorPrimary 颜色值; ?...设置一个 EditText,通过 Java 方式调整光标颜色,此效果为和尚我期待的效果,将上个步骤中 Tips 方式调整即可; ?...xml 中默认设置一个 android:textCursorDrawable="@drawable/editext_cursor" 样式,之后在 Java 代码动态修改光标颜色和宽度。...,同一个页面中所有的 EditText 光标样式,会以最后一次设置的为准。

    3.7K41

    Android端IM应用中的@人功能实现:仿微博、QQ、微信,零入侵、高可扩展

    4、微博的做法 4.1 侦听并处理光标活动、选中状态以及Span位置变化 对于光标活动和选中状态侦听,如果采用继承EditText的方式实现标签文本功能,重写onSelectionChanged(int...也就是说,我们可以不使用EditText自身的API却能够管理它的光标活动和选中状态(请注意这几句话,他是“优雅实现”的基石)。 Selection管理光标活动。那么,SpanWatcher又是什么?...那我们能不能把它放在setText()之后设置呢?如果你这么做,你会发现一个新问题。setText()添加的文本没有效果。...告诉他不能用setText()方法?或者用内联方法或继承的方式为EditText新增一个方法? 这些都可以,唯一的缺点是,它不是我想要的优雅。...我要让它就像使用普通EditText一样正常使用setText()方法。 需要思考的问题是,SelectionSpanWatcher在哪里消失了?我要重新找回这个轴承。

    2.3K30

    Android TextView 中 setText 的空指针异常

    第一次发现这问题,记录一下,在适配器里面给TextView设置一个int类型的值,然后闪退报错,DeBug模式下查看了布局和id,均没有问题,再次查看日志输出,Caused By: android.content.res.Resources...$NotFoundException:String resource ID #0x86,发现有两个词引起了注意String Resources,才知道TextView在内部实现时设置的类型为String...,所以用String.valueOf(),这里再啰嗦几句,在String类型的转化问题上,String.valueOf()效率最高,因为虚拟机对它进行了特殊处理,其次是toString,最后是+""的拼接形式...,拼接String的形式内部实现其实就是toString,但是要相对复杂一些,拼接过程中产生了常量和一些判断条件,效率低下,详情见源码

    1.7K10

    Android开发笔记(三十六)展示类控件

    setHintTextColor : 设置提示文本的颜色。 在录入用户信息时(比如输入姓名、密码等等),EditText输入回车键,常常不要换行而是让光标直接跳到下一个编辑框。...该功能有两种实现方式: 方式一:在布局文件的EditText节点中加入singleLine属性,但该方式只在视觉上起作用,真正的字符串还是带有回车换行符; android:singleLine="true...et_this.setText(str); 3、光标跳到下个编辑框,并自动挪到编辑框文本末尾。...,不能切换光标)。...EditText还有一个需要特殊处理的地方,就是自动关闭软键盘。一般我们希望点击其它控件时,原输入框的软键盘就要自动消失,可惜Android不是这样处理。

    1.5K30

    微博的文本编辑和显示(emoji表情,@某人、链接高亮点击)

    因为考虑到字数限制还有大小问题,下面还有对应参数,大小一般我设置的是20dp(够大了吧= =),插♀入的时候注意当前的光标位置哟,而Android的文本输入框一般对于ImageSpan 的回退都是整个删除的...(Linkify.WEB_URLS | Linkify.PHONE_NUMBERS); textView.setText(spannable); 之后我们利用这个特性,对TextView的CharSequence...和Phone格式的Span和String了,之后我们就可以挑选要睡谁了。...()); return spannableString; } EditTextAtUtils 处理@某人的逻辑 这里需要实现的在编辑文本框中需要实现的@某人显示,类似微博Android...EditText在点击的时候我们可以获取到光标落下的位置,这时候我们通过该位置去已有@的list列表里判断每个名字所在位置,比对光标位置是不是落在了@块内,如果是就强行将光标落到@块的旁边(= =光标不能插进来

    2.2K20

    Android自定义EditText:手把手教你做一款智能EditText(一键删除、自定义样式)

    前言 Android开发中,EditText的使用 非常常见 本文将手把手教你做一款 附带一键删除功能 & 自定义样式丰富的 SuperEditText控件,希望你们会喜欢。...功能介绍 2.1 需求场景 对于 EditText来说,一般的需求有: 方便用户因出现输入错误而进行2次输入 标识用户正在填写项 根据具体场景增加一定的UI元素 2.2 功能需求 根据需求场景,得出EditText...需要具备的功能如下: 一键删除 丰富的自定义样式:左侧图标、删除功能图标、分割线 & 光标 样式变化。...),不复杂却能满足一般的EditText使用需求 可自定义样式如下:(注:该样式的设置是系统自带的 API 所不具备的) 3.2 使用简单 仅需要简单的xml属性配置 具体请看文章:Android自定义...功能详细设计 下面将给出详细的功能逻辑 4.1 一键清空输入字段 描述:将当前用户输入的字段清空 需求场景:方便用户因出现输入错误而进行2次输入 原型图 源码分析 /* * 步骤1:定义属性

    1.3K30

    Android自定义EditText:手把手教你做一款含一键删除&自定义样式的SuperEditText

    前言 Android开发中,EditText的使用 非常常见 本文将手把手教你做一款 附带一键删除功能 & 自定义样式丰富的 SuperEditText控件,希望你们会喜欢。 ?...功能介绍 2.1 需求场景 对于 EditText来说,一般的需求有: 方便用户因出现输入错误而进行2次输入 标识用户正在填写项 根据具体场景增加一定的UI元素 2.2 功能需求 根据需求场景,得出EditText...需要具备的功能如下: 一键删除 丰富的自定义样式:左侧图标、删除功能图标、分割线 & 光标 样式变化。...),不复杂却能满足一般的EditText使用需求 可自定义样式如下:(注:该样式的设置是系统自带的 API 所不具备的) ?...功能详细设计 下面将给出详细的功能逻辑 4.1 一键清空输入字段 描述:将当前用户输入的字段清空 需求场景:方便用户因出现输入错误而进行2次输入 原型图 ?

    1.9K30

    EditText 集锦 - 开发中常用的用法及遇到的各种坑

    ---- 常用的基本属性 该片段的内容来自于 重拾Android之路之EditText EditText属性(API 24) android:hint //设置hint提示文本 android:textColorHint...:textColorHighlight //设置被选中字体的颜色.默认为 Theme 主题中的 “colorAccent”的颜色. textCursorDrawable //设置被光标的颜色.默认为 Theme...//设置文本的类型,用于帮助输入法显示合适的键盘类型. android:maxLength //设置EditText最多接受的文本的个数. android:lines //设置EditText显示的行数..., 0); } 取消 EditText 默认获取焦点的行为 在EditText的父级控件中找一个,添加这两个属性: android:focusable="true" android:focusableInTouchMode...,就是当你的 text 超过 30 个字符的时候,你调用 mEtText.setText ,这时候会报错。

    2.3K20

    Android开发笔记(一百四十六)仿支付宝的支付密码输入框

    编辑框EditText算是Android的一个基础控件了,表面上看,EditText只负责接收用户手工输入的文本;可实际上,要把这看似简单的文本输入做得方便易用,并不是一个简单的事情...,支付密码的输入框必须实现EditText的功能。...对于处理密码输入的EditText来说,需要实现以下几项操作: 1、把默认的下划线背景替换为圆角背景,且支持在获得焦点时高亮显示; 2、屏蔽输入光标,可调用setCursorVisible方法设置为不可见...但有两个功能的实现要特别注意: 首先,对于密文字符,Android默认显示点号(·),可显示星号(*)也很常见,那有没有办法把系统默认的点号替换为星号呢?...这个需求看起来很简单,只要强行给TextView队列调用setText方法即可,然而这不是安全的做法,因为它丢弃了CharSequence中的丰富信息。

    1.9K30

    22-ESP8266 SDK开发基础入门篇--编写Android TCP客户端 , 连接和断开

    包名  路径什么的自己随意哈 ? 放一个textview 自己拖动,哈 ? ? 由于没有Edittext 控件,所以,没有可以拖进来的..... ? ? 选择自适应 ?...;//定义两个EditText变量,变量名字我一般设置的和先前页面里面的一样 Button buttonActivityMain1;//连接按钮 @Override protected...由于连接的时候是阻塞的(连接不上就一直等着,直到连接错误,或者超时),所以需要任务 ? ? ? ? ?...;//定义两个EditText变量,变量名字我一般设置的和先前页面里面的一样 Button buttonActivityMain1;//连接按钮 Socket socket;//定义一个...;//定义两个EditText变量,变量名字我一般设置的和先前页面里面的一样 Button buttonActivityMain1;//连接按钮 Socket socket;//定义一个

    96010
    领券