❶ android鍵盤怎麼刪除
你好,我給你最完美的解決方案:
用地瓜等市場軟體任意下載一個加強版的輸入法軟體(簡單好用些),安裝完了後,進入簡訊,輸入文字狀態時,長按文本框,彈出對話框中選輸入法,點選你剛剛安裝的輸入法。
ok,成功!
以後你再也不用憂慮此問題了,呵呵
❷ 如何監聽android軟鍵盤的隱藏和消失
原理:自定義布局的onSizeChanged()方法,在其中增加一個監聽介面,當軟鍵盤顯示或隱藏使得布局尺寸發生改變,就能捕獲到這個事件。
具體方法如下:
首先,在清單文件Manifest.xml中的對應的Activity標簽內設置
android:windowSoftInputMode=」adjustResize」
作用是當軟鍵盤顯示或隱藏時,該Activity主窗口總是會被調整大小以便留出軟鍵盤的空間。唯有這樣才能保證布局觸發onSizeChanged()方法。
然後,自定義一個布局,具體是RelativeLayout、LinearLayout或是其它的,根據實際情況而定,自定義的目的是在其onSizeChanged()方法中增加一個監聽介面。這里給出一個自定義RelativeLayout布局代碼:
public class CustomRelativeLayout extends RelativeLayout {
private OnSizeChangedListener listener;
public CustomRelativeLayout(Context context) {
super(context);
}
public CustomRelativeLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
Log.d(TAG.CUSTOM_VIEW, 「onSizeChanged」);
super.onSizeChanged(w, h, oldw, oldh);
if (listener != null) {
listener.onSizeChanged(w, h, oldw, oldh);
}
}
public void setOnSizeChangedListener(OnSizeChangedListener listener) {
this.listener = listener;
}
/** * Activity主窗口大小改變時的回調介面(本示例中,等價於軟鍵盤顯示隱藏時的回調介面) */
public interface OnSizeChangedListener {
public void onSizeChanged(int w, int h, int oldw, int oldh);
}
}
最後,在程序中使用此介面(xxx.setOnSizeChangedListener(…))即可實現監聽鍵盤隱藏或顯示事件。
❸ android 橫屏狀態,如何監聽鍵盤的彈起與隱藏
android鍵盤監聽不了,只有監聽布局的狀態,所以要重寫布局進行監聽
❹ android怎麼實現後台對按鍵事件的監控
遙控器按鍵事件這個不是在Android源碼的bootable下面ircon.c配置的么。比如:
{ .scancode = 0x0b, .mask = 0xaa0087ee,
.keycode = KEY_UP, .spec = IRCON_KEYCODE_NORMAL | IRCON_KEYCODE_LONGPRESS | IRCON_KEYCODE_MOUSEMD },
遙控器按鍵編號是「 0x0b」,給他的響應是「KEY_UP」,就是方向鍵的下,這個是在源碼里邊配置的。你必須要有遙控器的書名數,知道遙控器每個按鍵的編號,然後對應給他相應的響應才可以。
但是你要操控手機,你的手機必須要能接受遙控器信號,這個也是要硬體支持的,一般的手機貌似都沒有這個。
這個遙控的響應操作是驅動層做的,和應用層沒什麼關系,主要是驅動和硬體的支持。
❺ 安卓setOnKeyListener為什麼只有在點刪除或回車的時候有反應
OnKey不能監聽軟體鍵盤的事件,只能監聽一些固定的刪除回車,返回的按鍵, 如果要監聽軟鍵盤的按鍵,只能用自定義的輸入法.
❻ android 怎樣監聽軟鍵盤關閉
我們在android手機上面有時候會遇到監聽手機軟鍵盤按鍵的時候,例如:我們在瀏覽器輸入url完畢後可以點擊軟鍵盤右下角的「GO」按鍵載入url頁面;在點擊搜索框的時候,點擊右下角的search符號鍵可以進行搜索;或者在全部數據輸入完畢後,點擊右下角的"done"就馬上進行下一步操作。
function 1:
重寫Activity的dispatchKeyEvent(KeyEvent event)方法,在其中監聽KeyEventKey.KEYCODE_ENTER鍵(右下角確定鍵),當此鍵按下的時候,隱藏輸入法軟鍵盤,設置edittext內容和載入webview內容。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if(event.getKeyCode() == KeyEvent.KEYCODE_ENTER){
/*隱藏軟鍵盤*/
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(inputMethodManager.isActive()){
inputMethodManager.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return super.dispatchKeyEvent(event);
}
function 2:
重寫dispatchKeyEvent(KeyEvent event)的方法感覺有點用牛刀的感覺,因為我們非常可能在這個方法中進行其他任務,所以我們可以使用OnKeyListener的方法來監聽軟鍵盤按鍵。
private OnKeyListener onKeyListener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_ENTER){
/*隱藏軟鍵盤*/
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
if(inputMethodManager.isActive()){
inputMethodManager.hideSoftInputFromWindow(v.getApplicationWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return false;
};
edittext.setOnKeyListener(onKeyListener);
function 3:
第三種方法我認為可以幫助程序員更精確的判斷右下角按鍵情況,以便應對更加復雜的情況。它可以幫助程序員依據當前郵件下為「GO」,「done」,「search」鍵的情況下做出更細分的操作。
edittext.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
/*判斷是否是「GO」鍵*/
if(actionId == EditorInfo.IME_ACTION_GO){
/*隱藏軟鍵盤*/
InputMethodManager imm = (InputMethodManager) v
.getContext().getSystemService(
Context.INPUT_METHOD_SERVICE);
if (imm.isActive()) {
imm.hideSoftInputFromWindow(
v.getApplicationWindowToken(), 0);
edittext.setText("success");
webview.loadUrl(URL);
return true;
return false;
});
❼ android如何監聽軟鍵盤輸入法的刪除鍵
參考下面代碼:
editText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DEL
&& event.getAction() == KeyEvent.ACTION_DOWN) {
事件
return true;
}
return false;
}
});
❽ android中怎麼實現按鍵監聽和觸屏監聽
按鍵監聽代碼:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch(keyCode){
case KeyEvent.KEYCODE_DPAD_UP:
y--;break;
case KeyEvent.KEYCODE_DPAD_LEFT:
x--;break;
case KeyEvent.KEYCODE_DPAD_DOWN:
y++;break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
x++;break;
}
this.invalidate();
return true;
}
觸屏監聽代碼:
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
x=(int)event.getX();
y=(int)event.getY();
this.invalidate();
return true;
}
通過滑鼠可以使圖形任意移動。將apk文件下載到手機上就可以實現觸屏監聽。
❾ Android 只是用軟鍵盤刪除一個字元(未退出軟鍵盤),就已經觸發EditText的afterTextChanged應該怎麼解決
如果輸入的字元有長度,斷定在滿足長度後再去更新adapter.notifyDataSetChanged()
設置下監聽下鍵盤確定鍵,監聽到後再adapter.notifyDataSetChanged()
可以起一個定時器來監聽輸入,滿足條件再新adapter.notifyDataSetChanged()
❿ Android,寫了個EditText控制項,但只能添加文字,如果按軟鍵盤的刪除按鈕,所有字都會清空,求大牛解答。
你看你寫的監聽 etMessage.setText(""); 可定直接都沒了啊 建議你根據 keycode獲取前一個字 再set的時候獲取當前的信息 然後再減去一個
其實你根本不必要去寫edittext來實現這 因為本身就可以用 根本不需要監聽!