您好,登錄后才能下訂單哦!
EditText如何在Android項目中使用?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
1.獲取光標選中的文字
EditText view = (EditText)findViewById(R.id.edt); int start = view.getSelectionStart(); int end = view.getSelectionEnd(); //由于選擇的位置和你開始選擇文字的順序有關,所以最好重新判斷整理一下順序,免得出錯 if (start>end) { start = start + end ; end = start - end; start = start - end; } String sub = view .getText() .toString().substring(start, end);
2.設置光標在輸入框的位置
在編寫應用的時候,如果我們要將光標定位到某個位置,可以采用下面的方法:
CharSequence text = editText.getText(); //Debug.asserts(text instanceof Spannable); if (text instanceof Spannable) { Spannable spanText = (Spannable)text; Selection.setSelection(spanText, text.length()); }
其中的代碼text.length()
為你想要設置的位置,此處是設置到文本末尾。
3 在指定位置插入字符串
public class EditTextCopyActivity extends Activity { /** Called when the activity is first created. */ private EditText et1 ,et2,et3,et4,et5,et6,et7; private Button bt1,bt2,bt3; private ClipboardManager clip ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); initViews(); bt1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { View view = getCurrentFocus(); if (view instanceof EditText) { EditText et = (EditText)view; int start = et.getSelectionStart(); int end = et.getSelectionEnd(); if (start>end) { start = start + end ; end = start - end; start = start - end; } String sub = et.getText().toString().substring(start, end); clip.setText(sub); } } }); bt2.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { View view = getCurrentFocus(); if (view instanceof EditText) { EditText et = (EditText)view; int start = et.getSelectionStart(); System.out.println(start+"--------------"); String s = clip.getText().toString(); et.getText().insert(start,s); } } }); bt3.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { View view = getCurrentFocus(); if (view instanceof EditText) { EditText et = (EditText)view; int start = et.getSelectionStart(); int end = et.getSelectionEnd(); if (start>end) { start = start + end ; end = start - end; start = start - end; } String sub = et.getText().toString().substring(start, end); et.getText().delete(start, end); clip.setText(sub); } } }); } private void initViews(){ et1 = (EditText)this.findViewById(R.id.editText1); et2 =(EditText)this.findViewById(R.id.editText2); et3 =(EditText)this.findViewById(R.id.editText3); et4 =(EditText)this.findViewById(R.id.editText4); et5 =(EditText)this.findViewById(R.id.editText5); et6 =(EditText)this.findViewById(R.id.editText6); clip = (ClipboardManager)getSystemService(CLIPBOARD_SERVICE); bt1=(Button)this.findViewById(R.id.button1); bt2 = (Button)this.findViewById(R.id.button2); bt3 = (Button)this.findViewById(R.id.button3); } }
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。