EditText添加了ImageSpan后,在两者中间不能输入纯文本
2016-12-09 13:28
190 查看
严格来说是连续插入两个ImageSpan之后,在其中间不能够输入纯文本内容。
最后发现问题出现在了SpannableString在设置ImageSpan的时候第四个参数flag的问题。
第四个参数的含义是,在插入的ImageSpan前后内容是否使用Span特性。设置为Spannable.SPAN_EXCLUSIVE_EXCLUSIVE,前后都不包含就搞定了。
第一个参数是设置的内容所用的Span对象(每次setSpan必须new一个新的Span,内部会检查否则只有最后一个才会使用Span);
第二个参数是使用Span的起始位置(包括这个索引);
第三个参数是使用Span的结束位置(不包括这个索引);
最后发现问题出现在了SpannableString在设置ImageSpan的时候第四个参数flag的问题。
spannable.setSpan(span, matcher.start(), matcher.end(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
第四个参数的含义是,在插入的ImageSpan前后内容是否使用Span特性。设置为Spannable.SPAN_EXCLUSIVE_EXCLUSIVE,前后都不包含就搞定了。
第一个参数是设置的内容所用的Span对象(每次setSpan必须new一个新的Span,内部会检查否则只有最后一个才会使用Span);
第二个参数是使用Span的起始位置(包括这个索引);
第三个参数是使用Span的结束位置(不包括这个索引);
相关文章推荐
- 建立一个文本文件in.txt,在其中输入若干个正整数,中间用空格分隔,然后保存起来;在窗体上添加一个命令按钮和一个标签框,当单击命令按钮时将in.txt文件中存放的所有的能被3整除的数的和显示在标签框
- Android EditText 不能输入 手机输入法自带 Emoji 表情,为EditText 添加输入限制
- IE文本输入框不能输入的解决方法(mshtmled.dll)
- 判断添加文本不能为空
- 用算法实现将一个输入的数字颠倒(输入12345->54321),要求不调用任何系统函数,也不能将输入的数字转换为字符串作为中间过渡
- Android笔记:TextView和编辑框中添加图片,ImageSpan,SpannableStringBuilder用法
- Android EditText 添加文本改变监听
- XP内添加日语的输入法时都不能正常输入日语
- EditText输入时显示千分符“,”,限制输入长度,添加输入限制
- TextView和EditText中添加图片(ImageSpan)
- Jquery中添加Class属性值验证:不能输入非法字符
- android模拟器EditText 不能用物理键盘输入,也不能用电脑键盘输入
- 只能输入数字只能有一个小数点,小数点不能在开头,不能在结尾,第一位允许添加负号
- jquery 插件 thickbox窗口 第一个控件获得焦点(解决第二次弹出窗口,文本不能输入数据)
- android模拟器EditText 不能用物理键盘输入,也不能用电脑键盘输入
- TextView和EditText中添加图片(ImageSpan)
- IE文本输入框不能输入的解决方法(mshtmled.dll)
- android模拟器EditText 不能用物理键盘输入,也不能用电脑键盘输入
- C# ComboBox实现不能输入,且下拉选框文本上有值
- EditText输入后不能删除的问题