android獲取游標
⑴ android 一個布局裡面有三個EditText默認的游標是停在第一個上面的怎麼讓游標默認在第二個或第三個呢
在請求出現游標是,也就是在獲取焦點時:
editText.requestFocus();
清除游標,也就是失去焦點:
editText.clearFocus();
第一個設置失去焦點,第二或者第三個設置獲得焦點試試
另外還有:
使游標移動到指定的位置:
editText.setSelection(2);
輸入的參數是個整數
讓EditText不出現游標:
editText.setCursorVisible(false);
⑵ android edittext怎麼設置游標
使游標移動到制定的位置:
editText.setSelection(2);
輸入的參數是個整數
在請求出現游標是,也就是在獲取焦點時:
editText.requestFocus();
清除游標,也就是失去焦點:
editText.clearFocus();
讓EditText不出現游標:
editText.setCursorVisible(false);
⑶ Android 獲取焦點
你好,我舉例說明:比如有個輸入框,當你點擊輸入框時,這時它的游標在閃爍,可以輸入文字,那麼就可以說這個輸入框獲得焦點了。獲取焦點的控制項就是當前可以執行操作的控制項。
使用view.requestFocus()方法可以手動獲取焦點。
以上,希望對你有幫助。
⑷ irrlicht在android開發中如何獲取滑鼠焦點
打個比方吧,一個EditText控制項獲取到了焦點,那麼你現在所做的操作就是對這個EditText,比如說鍵盤輸入
戴屹父沨融深漓鍾盧影岳貴湘濮粵昊理滸粲驊瓴
⑸ android 獲取游標在哪個edittext上
是由點擊事件來區分的,哪個控制項被點擊後,游標會在上面顯示
⑹ 如何定位android系統中游標的位置
Android中有很多可編輯的彈出框,其中有些是讓我們來修改其中的字元,這時游標位置定位在哪裡呢?
剛剛解了一個bug是關於這個游標的位置的,似乎Android原生中這種情況是把游標定位到字元串的最前面。需求是將游標定位到字元的最後面。
修改的地方是TextView這個控制項,因為EditText也是繼承了TextView。在setText方法中有:
1 private void setText(CharSequence text, BufferType type,
2 boolean notifyBefore, int oldlen) {
3 ……
4 if (text instanceof Spannable) {
5 Spannable sp = (Spannable) text;
6
7 ……
8 if (mMovement != null) {
9 mMovement.initialize(this, (Spannable) text);
10 //文本是不是Editable的。
11 if(this instanceof Editable)
12 //設定游標位置
13 Selection.setSelection((Spannable)text, text.length());
14
15 ……
16 }
從紅色代碼中可以看出,google是要游標處在預設文本的末端,但是,log發現 (this instanceof Editable)非真,也就是說Selection.setSelection((Spannable)text, text.length());並不會被執行。
1 Log.d("TextView", "(type == BufferType.EDITABLE)="+(type == BufferType.EDITABLE));
2 if(type == BufferType.EDITABLE){
3 Log.d("TextView","Format text.Set cursor to the end ");
4 Selection.setSelection((Spannable)text, text.length());
5 }
這個樣修改後即可。
在編寫應用的時候,如果我們要將游標定位到某個位置,可以採用下面的方法:
1 CharSequence text = editText.getText();
2 //Debug.asserts(text instanceof Spannable);
3 if (text instanceof Spannable) {
4 Spannable spanText = (Spannable)text;
5 Selection.setSelection(spanText, text.length());
6 }
其中紅色標記的代碼為你想要設置的位置,此處是設置到文本末尾。
⑺ android editetext的游標怎麼定義
使游標移動到制定的位置:
editText.setSelection(2);
輸入的參數是個整數
2
在請求出現游標是,也就是在獲取焦點時:
editText.requestFocus();
清除游標,也就是失去焦點:
editText.clearFocus();
3
讓EditText不出現游標:
editText.setCursorVisible(false);
⑻ android中edittext怎麼獲取游標
下面是edittext獲取游標的例子,更多關於edittext的介紹,請參考android學習手冊。
android學習手冊包含9個章節,108個例子,源碼文檔隨便看,例子都是可交互,可運行,
源碼採用android studio目錄結構,高亮顯示代碼,文檔都採用文檔結構圖顯示,可以快速定位。360手機助手中下載,圖標上有貝殼
int index = editText.getSelectionStart();
int index = editText.getSelectionStart();
2.在游標處插入字元
[java] view plain print?
int index = editText.getSelectionStart();
Editable editable = editText.getText();
editable.insert(index, "aaaa");
int index = editText.getSelectionStart();
Editable editable = editText.getText();
editable.insert(index, "aaaa");
3.刪除游標前字元
[java] view plain print?
int index = editText.getSelectionStart();
Editable editable = editText.getText();
editable.delete(index-1, index);
⑼ Android Cursor(游標)解析
SQLiteDatabase db = dataBaseHelper.getWritableDatabase();
Cursor cursor = db.rawQuery("select *from User",null);
1.游標的行數:int getCount()
2.當前游標的位置:int getPosition()
返回的值從零開始, 當第一次返回行集時游標將位於位置 -1,即第一行之前。在返回最後一行之後,對 next() 的另一個調用將使游標離開最後一個條目,位於 count() 的位置。
3.從當前位置應用的偏移量:boolean move(int offset)
將游標從當前位置向前或向後移動一個相對量。 正偏移向前移動,負偏移向後移動。 如果最終位置在結果集的邊界之外,則結果位置將分別固定為 -1 或 count(),具體取決於該值是在集合的前端還是末尾。如果請求的目的地可達,此方法將返回 true,否則返回 false。
4.將游標移動到絕對位置:boolean moveToPosition(int position)
值的有效范圍是 -1 <= 位置 <= 計數。如果請求目的地可達,此方法將返回 true,否則返回 false。
5.將游標移動到第一行:boolean moveToFirst()
6.將游標移動到最後一行:boolean moveToLast()
7.將游標移動到下一行:boolean moveToNext()
8.將游標移動到上一行:boolean moveToPrevious()
9.返回遊標是否指向第一行:boolean isFirst()
10.返回遊標是否指向最後一行:boolean isLast()
11.返回遊標是否指向第一行之前的位置:boolean isBeforeFirst()
12.返回遊標是否指向最後一行之後的位置:boolean isAfterLast()
13.給定列名的從零開始的列索引,如果列名不存在,則返回 -1:int getColumnIndex(String columnName)
14.給定列名的從零開始的索引,如果該列不存在則拋出非法參數異常:int getColumnIndexOrThrow(String columnName) throws IllegalArgumentException
15.給定的從零開始的列索引處的列名:String getColumnName(int columnIndex)
16.返回一個字元串數組,其中按列在結果中的順序保存結果集中所有列的名稱。:String[] getColumnNames()
17.返回總列數:int getColumnCount()
18.各類型返回值
(1)以位元組數組的形式返回請求列的值:byte[] getBlob(int columnIndex)
(2)以字元串形式返回請求列的值:String getString(int columnIndex)
(3)以整數形式返回請求列的值:int getInt(int columnIndex)
(4)以 long 形式返回請求列的值:long getLong(int columnIndex)
(5)以浮點數形式返回請求列的值:float getFloat(int columnIndex)
(6)以雙精度形式返回請求列的值:double getDouble(int columnIndex)
(7)返回給定列值的數據類型:int getType(int columnIndex)
(8)列值是否為空:boolean isNull(int columnIndex)
(9)以短形式返回請求列的值:short getShort(int columnIndex)
19.檢索請求的列文本並將其存儲在提供的緩沖區中:void StringToBuffer(int columnIndex, CharArrayBuffer buffer)
20.關閉游標:void close()
21.游標是否關閉:boolean isClosed()
22.注冊一個觀察者,當支持此游標的內容發生變化時調用該觀察者:void registerContentObserver(ContentObserver observer)
23.銷毀注冊的觀察者:void unregisterContentObserver(ContentObserver observer)
24.注冊一個觀察者,當數據集的內容發生變化時被調用:void registerDataSetObserver(DataSetObserver observer)
25.銷毀注冊的觀察者:void unregisterDataSetObserver(DataSetObserver observer)
26.注冊以查看內容 URI 的更改。這可以是特定數據行的 URI,也可以是內容類型的通用URI:void setNotificationUri(ContentResolver cr, Uri uri)
cr是上下文,uri是需要觀看的內容
27.是否所有游標移動都應導致調用 onMove():boolean getWantsAllOnMoveCalls()
只有在此方法返回 true 時,才會跨進程調用 onMove()
28.返回一組額外的值:Bundle getExtras()
29.游標用戶與游標通信的帶外方式:Bundle respond(Bundle extras)
30.設置 Bundle 返回的getExtras():void setExtras(Bundle extras)
⑽ 剛學Android,EditText的游標位置怎麼調
這個只要設置EditText的gravity屬性(即它的子View的輸出位置)為top即可,如果你的EditText有內容,則通過調用它的setSelectionStart和setSelectionEnd方法設置游標具體在哪個字元之前