2016年5月9日 星期一

讓textView可以自動選取文字,並且不能捲動


方法是繼承TextView另外增加一個新類別
1.override getText方法,然後增加一個setSelection的方法, 自己寫選取文字的程式碼在裡面,使用時就呼叫此一方法即可
2.override scrollTo的方法, 裡頭什麼事都不做, 自然就不會scroll了 (scrollview也是同一個方法)



public class STextView extends TextView {

    public STextView(Context context) {
        super(context);
        // TODO Auto-generated constructor stub    }

    public STextView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public STextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    //讓textview無法scroll
    @Override
    public void scrollTo(int x, int y) {
        //do nothing    }


    @Override
    public Spannable getText() {
        return (Spannable) super.getText();
    }

//增加一個setSelection的方法, 自己寫選取文字的程式碼在裡面
public void setSelection(int start, int stop) {
        Selection.setSelection(getText(), start, stop);
    }

}

  © Blogger templates Psi by Ourblogtemplates.com 2008

Back to TOP