首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

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

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

3.3K41

Android如何自定义EditText光标与下划线颜色详解

现在就让我们循序渐进,先修改它光标颜色。 ? 2、自定义光标颜色 EditText 有一个属性:android:textCursorDrawable ,它就是用来设置光标样式。...你可以给文字(android:textColor)和提示文字(android:textColorHint属性)设置不同颜色,运行之后就会发现此时光标的颜色是跟文字保持一致。...了解了android:textCursorDrawable 作用之后,我们可以在drawable资源文件夹下新建一个cursor_color.xml文件,内容如下 <?...3、取消背景后EditText 第2节中,我们将属性android:textCursorDrawable 设置为“@null”之后发现光标的样式会变得跟文字颜色一样,那么如果将整个EditText...运行,就可以看到一模一样效果了。 7、后记 文章至此就结束了,但是我要学东西还有很多,文章里某些知识出于我个人理解,可能会有不足或者错误,欢迎大家指正!

5.2K51

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

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

2.1K30

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 EditText实现输入金额类型详解

前言 众所周知,AndroideditText默认属性里面是没有金额类型,所以要实现这个功能我们就必须自己动手丰衣足食。下面话不多说了,来一起看看详细介绍吧。...(s); editText.setSelection(s.length()); } } 3.第一个数为0情况 我这里写判断不是很好,之后可以改进。...(1); return; } } 上面也说了这步算法有两个问题,第一,如果在0.26情况下,我把光标点在0后面,输入一个不为0数字假设5,得到结果是0而不是5.26...第二,假如还是0.26情况下,我把光标点在小数点后面,删除小数点,得到不是26而是0。所以这步算法有些问题。那为什么不现在改呢,不好意思,最近太忙,写文章都很赶。...4.第一个是小数点情况 假如你数是5.26,这时候你把光标放到5后面,删除5,如果你不做处理,那展示出来就是.26,这样展示就很不友好,所以我们要想办法要在第一位为小数点情况下补0。

1.6K31

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

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

1.4K30

Android自定义方框EditText注册验证码

,获取内容,并且改变EditText下面的TextView颜色 重新发送是采用一个自定义CountDownTimer类 弹出效果自定义一个Dialog继承DialogFragment 自定义EditText...(editable); editText.setText("");//添加后将EditText置空 造成没有文字输入错局 // Log.e("TAG", "afterTextChanged..." / </LinearLayout </LinearLayout [大体思路,点击事件之后弹出一个Dialog,然后再这个页面进行注册,有可能这个Dialog会复用,或者改一些样式(采用...editText.getEditContent().equals("1234")) { text.setText("验证码输入错误"); text.setTextColor(Color.RED); }...源码地址:Android自定义方框EditText注册验证码 以上就是本文全部内容,希望对大家学习有所帮助。

1.3K30

Android自定义控件通用验证码输入框实现

输入框一行可输入4位数字类型验证码; 2. 4位数字之间有间隔(包括底线); 3. 输入框不允许有光标; 4. 底线根据输入位置显示高亮(蓝色); 6....输入完成,回调结果,输入过程中,也进行回调; 分析 这种效果,很难直接在Edittext上处理: — 输入框均分4等份,还要有间隔; — 更难处理Edittext输入框禁止光标,那么,没有光标...1.禁止光标,我们直接使用TextView就解决了,而非Edittext; 2.一行显示4位数字,比较简单,可以使用线性布局权重,对TextView进行控制为4等分; 3.每个TextView下面跟着一个底线...也很简单,我们在4个TextView上方平铺一个EditText,设置透明, 当用户点击到该控件时,会自动调起软键盘,接收输入文本。...EditText接收到用户输入文本,如何显示在TextView呢?

1.8K20

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

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

2.1K20

Android EditText每4位自动添加空格效果

看似很小功能,在开发过程中,遇到了非常多问题与难点: EditText输入框监听死循环 输入框中空格无法删除(删除又添加) 从中间删除一个数字产生一系列问题 输入框光标位置控制问题 之前踩坑过程就不再赘述了...用这种拼接字符方法是为了解决当用户删除中间数字,会导致空格位置错位问题。 当用户删除中间字符时,要记录该动作并且记录光标位置,保证重新排序完成后,光标的位置在应该在位置。...etContent.equals(newContent)) { et_credit_number.setText(newContent); //保证光标在最后,因为每次setText都会导致光标重置...但是光标乱跳问题,我特地演示了一下。...现在我们就要进行第二步,当用户删除中间字符时,我们要判断用户本次操作是删除字符,并且保存本次删除光标位置,在删除完成、排序完成之后,将光标移动到保存光标位置。

1.6K30

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

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

1.8K30
领券