編輯:關於Android編程
為了驗證編寫了個例子
首先是輸入法
public class RemoteKeyboard extends InputMethodService { @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (processKey(event, 0 != event.getRepeatCount())) return true; return super.onKeyDown(keyCode, event); } @Override public boolean onKeyUp(int keyCode, KeyEvent event) { if (processKey(event, true)) return true; return super.onKeyUp(keyCode, event); } private boolean processKey(KeyEvent event, boolean doIt) { Log.e("======= " ," ============ processKey"); return false; } }
final TextView et1 = (TextView)findViewById(R.id.editText1); et1.setOnKeyListener(new OnKeyListener() { @Override public boolean onKey(View v, int keyCode, KeyEvent event) { Log.e("====================","====OnKeyListener "); }
============================ : ============ processKey
==================== :====OnKeyListener
============================ : ============ processKey
==================== :====OnKeyListener
第一遍應該是KeyDown, 第二遍應該是 KeyUp, 說明Android 輸入法截取key優先於view
又試驗了一下改寫system/usr/keychars/Generic.kcm
把 B 改為
key B {
base: 'b' fallback DPAD_CENTER
}
在一個不可編輯框, log 如下
12-23 05:18:09.093 118 118 E ============================ : ============ processKey
12-23 05:18:09.094 118 118 E ============================ : ============ processKey
12-23 05:18:09.163 118 118 E ============================ : ============ processKey
12-23 05:18:09.163 118 118 E ============================ : ============ processKey
說明b沒有被 accept,而後又調用了 DPAD_CENTER
在一個可編輯框,b被accept, log 如下
============================ : ============ processKey
============================ : ============ processKey
說明沒有調用 fallback
如果改法如下
key B {
base: fallback DPAD_CENTER
}
在一個可編輯框也要打4行log, 說明 fallback被調用了
Android Studio 配合SVN時,添加忽略文件相對簡單,首先打開項目的Settings選項,切換到Version Control下的Ignored Files目
在聯系人,好友等列表中,為了能夠快速的根據名稱查找到相應的聯系人或者好友,通常會建立一個可以根據字母快速定位名稱的View。如下圖中右邊字母表所示:1.自定義View關於
Location Strategies注:本指南中描述的策略適用於平台定位API中android.location。該谷歌位置服務API,谷歌Play的一部分服務,提供了
JNI層方法命名規范在java層對應的native方法的聲明,test方法是一個本地方法,其參數是字符串類型,返回值是字符串類型。package com.kltz88.j