android关于EditText与其光标

翻译 2015年07月07日 15:23:40
(该文属整合性文章)

android EditText插入字符串到光标所在位置

       在安卓中处理文本编辑的时候,我们一般都是用EditText控件,除了基本的输入文字功能之外,我们很可能还需要一些更灵活的功能,比如在光标所在位置插入一张图片。但是EditText本身只有追加函数append(),并没有insert方法,难道要我们自己写方法实现插入功能吗,经过研究之后发现,EditText有已经实现好了的插入方法,不过在其附属的另外一个对象Editable中。通过getEditableText()方法可以获得该对象。下面的一段代码演示了如何在EditText的光标之处插入文字:
EditText mEditText = (EditText)findViewById(R.id.input);//EditText对象
int index = mEditText.getSelectionStart();//获取光标所在位置
String text="I want to input str";
Editable edit = mEditText.getEditableText();//获取EditText的文字
if (index < 0 || index >= edit.length() ){
      edit.append(text);
}else{
      edit.insert(index,text);//光标所在位置插入文字
 }

       你可能会说,在光标之处插入文字,那还不简单,用户直接通过输入法打出来的文字不都是在光标之处吗,你上面讲的东西有什么实际意义?的确是这样,但是有些情况下,我们希望光标处的文字或者其他东西并不是来自于用户输入,可能是来自于其他app或者activity的返回结果,这个结果应该自动插入到光标处,所以上面的讨论是有实际意义的。
       这里我可以解释一下原作者的意思,假如我们插入的是表情(至于如何向EditText插入表情,可以上网百度),对于使用这段话就很有必要了,不然可能即便光标不再文本末,插入表情也会插入到末尾的。

android java代码设置EditText输入类型

setInputType(android.text.InputType.*);
//可以根据自己的需要设置相应的类型。

怎样把光标放在EditText中文本的末尾处?
Editable etext = mSubjectTextEditor.getText();
Selection.setSelection(etext, etext.length());





举报

相关文章推荐

Android 设置EditText光标显示与隐藏,颜色及粗细

Android 设置EditText光标显示与隐藏,颜色及粗细 (一)Android 设置EditText光标颜色及粗细  在android的输入框里,如果要修改光标的颜色及粗细步骤如...

不仅仅是修改(Android EditText光标)

前言:放假三天,玩了两天了,前几天写过一篇博客 Android CardView全解析(二)好吧,本来就是想看看CardView的实现机制,然后看到5.0中实现CardView的方法,于是又感觉发现了...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

android EditText获取光标位置并插入字符删除字符

1.获取光标位置   [java]  int index = editText.getSelectionStart();   2.在光标处插入字符   [java]  int...

android EditText 光标位置

设置android:gravity="" 效果图1:   布局文件xml内容如下:   [html] view plaincopy ...

android EditText控制光标的位置

edittext 控制光标

Android EditText 反射实现有光标闪,但点击不弹出键盘

随着Android发展,版本更新,目前通过方法setInputType(InputType.TYPE_NULL);

android关于EditText取消默认焦点及触摸其它地方去掉光标隐藏键盘问题

android:focusableInTouchMode="true"

EditText的光标选择(android.text.Selection)&输入指定字符

提起Android的EditText的光标选择问题,可以通过android.text.Selection包提供的方法来实现,Android SDK提供了有关光标选择的多种方法,比如说getSelect...

Android禁止Edittext弹出软键盘并且使光标正常显示

公司正在开发的app有需求是:在编辑栏中弹出自定义的键盘,并且正常显示光标。刚开始以为很简单,按照网上的教程,没一个完美实现的。所以自己琢磨了下再结合其他人的代码,自己实现了需求。 1.首先禁用系统自...

Android之自定义EditText光标和下划线颜色

最近在写些小Demo复习基础,在用到EditText的时候突然发现之前几乎没有注意到它的光标和下划线的颜色,于是花了不少时间,看了不少博客,现在就来总结和分享一下收获。1、第一印象:原生的EditTe...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)