如何选择与在EditText上一次点击的文本? [英] how to select text with a single click in the EditText?

查看:221
本文介绍了如何选择与在EditText上一次点击的文本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

源代码以下code不能正常工作

 公共无效的onCreate(捆绑savedInstanceState){            super.onCreate(savedInstanceState);
            的setContentView(R.layout.activity_book_page);             book_page =(EditText上)findViewById(R.id.activity_book_page_text);
             book_page.setText(谷歌是你的朋友。TextView.BufferType.EDITABLE);             book_page.setOnClickListener(新OnClickListener(){                    @覆盖
                    公共无效的onClick(视图v){
                        book_page.setSelection(9,15);
                         //book_page.requestFocus();
                    }
               });             book_page.setOnFocusChangeListener(新OnFocusChangeListener(){
                    @覆盖
                    公共无效onFocusChange(视图V,布尔hasFocus){
                        如果(hasFocus){
                            book_page.setSelection(9,15);
                        }
                    }
                }); <的EditText
        机器人:ID =@ + ID / activity_book_page_text
        机器人:layout_width =FILL_PARENT
        机器人:layout_height =WRAP_CONTENT
        机器人:背景=#00000000
        机器人:EMS =10
        安卓的inputType =textMultiLine
        机器人:selectAllOnFocus =真正的>        < requestFocus的/>
    < /&的EditText GT;


解决方案

使用这块code在你的java文件:

  editText.setOnClickListener(新View.OnClickListener(){    @覆盖
    公共无效的onClick(视图v){
        editText.setSelection(0,editText.getText()长() - 1);
    }
}

Source code below is not working

    public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_book_page);

             book_page = (EditText) findViewById(R.id.activity_book_page_text);
             book_page.setText("Google is your friend.", TextView.BufferType.EDITABLE);

             book_page.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        book_page.setSelection( 9, 15);
                         //book_page.requestFocus();


                    }
               });

             book_page.setOnFocusChangeListener(new OnFocusChangeListener(){
                    @Override
                    public void onFocusChange(View v, boolean hasFocus){
                        if (hasFocus){
                            book_page.setSelection( 9, 15);
                        }
                    }
                });

 <EditText
        android:id="@+id/activity_book_page_text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#00000000"
        android:ems="10"
        android:inputType="textMultiLine"
        android:selectAllOnFocus="true" >

        <requestFocus />
    </EditText>

解决方案

Use this piece of code in your .java file:

editText.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        editText.setSelection(0, editText.getText().length() - 1);
    }
}

这篇关于如何选择与在EditText上一次点击的文本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆