VIVO手機上del鍵無效OnKeyListener不響應的原因及解決方法
在修改交易密碼界面用到一個自定義輸入框
類似這種(原諒丑了點~)
結果昨天有用戶反饋在VIVO手機上回出現,Del鍵無效的問題~~~
最后發(fā)現是:EdiText的OnKeyListener
沒有響應。
最后搜搜了一下,找到了解決方案:重寫EdiTextView的InputConnectionWrapper
的方法后解決了問題:
代碼如下:
public class ZanyEditText extends EditText { private OnDelKeyEventListener delKeyEventListener; public ZanyEditText(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public ZanyEditText(Context context, AttributeSet attrs) { super(context, attrs); } public ZanyEditText(Context context) { super(context); } @Override public InputConnection onCreateInputConnection(EditorInfo outAttrs) { return new ZanyInputConnection(super.onCreateInputConnection(outAttrs), true); } private class ZanyInputConnection extends InputConnectionWrapper { public ZanyInputConnection(InputConnection target, boolean mutable) { super(target, mutable); } @Override public boolean sendKeyEvent(KeyEvent event) { if (event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_DEL) { if (delKeyEventListener != null) { delKeyEventListener.onDeleteClick(); return true; } } return super.sendKeyEvent(event); } @Override public boolean deleteSurroundingText(int beforeLength, int afterLength) { if (beforeLength == 1 && afterLength == 0) { return sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DEL)) && sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_DEL)); } return super.deleteSurroundingText(beforeLength, afterLength); } } /** * * 功能描述: <br> * 〈功能詳細描述〉 * * @param delKeyEventListener EditText刪除回調 */ public void setDelKeyEventListener(OnDelKeyEventListener delKeyEventListener) { this.delKeyEventListener = delKeyEventListener; } public interface OnDelKeyEventListener { void onDeleteClick(); } }
參考:http://stackoverflow.com/questions/4886858/android-edittext-deletebackspace-key-event%22
以上所述是小編給大家介紹的VIVO手機上del鍵無效OnKeyListener不響應的原因及解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
iOS關鍵字static extern const使用示例詳解
這篇文章主要為大家介紹了iOS關鍵字static extern const使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11IOS中MMDrawerController第三方抽屜效果的基本使用示例
這篇文章主要介紹了IOS中MMDrawerController第三方抽屜效果的基本使用示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-02-02IOS UITableViewCell詳解及按鈕點擊事件處理實例
這篇文章主要介紹了IOS UITableViewCell詳解及按鈕點擊事件處理實例的相關資料,這里附有示例代碼,大家可以看下如何實現按鍵點擊事件,需要的朋友可以參考下2016-12-12iOS App開發(fā)中Core Data框架基本的數據管理功能小結
除了使用SQL關系型數據庫,我們還可以使用Xcode中提供的Core Data來進行表結構數據處理,這里我們就來初步整理iOS App開發(fā)中Core Data框架基本的數據管理功能小結:2016-06-06