国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

VIVO手機上del鍵無效OnKeyListener不響應的原因及解決方法

2019-10-21 18:49:46
字體:
來源:轉載
供稿:網友

在修改交易密碼界面用到一個自定義輸入框

類似這種(原諒丑了點~)

結果昨天有用戶反饋在VIVO手機上回出現,Del鍵無效的問題~~~

最后發現是: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不響應的原因及解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!

 

注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大冶市| 宜阳县| 霍邱县| 蒙阴县| 武山县| 东乡族自治县| 资源县| 呼和浩特市| 罗源县| 伽师县| 石首市| 乌什县| 屏东县| 神池县| 利辛县| 文安县| 元阳县| 巴青县| 荥阳市| 辽阳市| 琼结县| 浙江省| 察隅县| 株洲县| 包头市| 南溪县| 博湖县| 闸北区| 平南县| 马山县| 凤山县| 古丈县| 松原市| 高邑县| 磐石市| 修武县| 肇源县| 海南省| 黔西县| 拉萨市| 五寨县|