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

首頁 > 系統(tǒng) > iOS > 正文

VIVO手機(jī)上del鍵無效OnKeyListener不響應(yīng)的原因及解決方法

2020-07-26 03:02:03
字體:
供稿:網(wǎng)友

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

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

結(jié)果昨天有用戶反饋在VIVO手機(jī)上回出現(xiàn),Del鍵無效的問題~~~

最后發(fā)現(xiàn)是:EdiText的OnKeyListener沒有響應(yīng)。

最后搜搜了一下,找到了解決方案:重寫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>   * 〈功能詳細(xì)描述〉   *   * @param delKeyEventListener EditText刪除回調(diào)   */  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手機(jī)上del鍵無效OnKeyListener不響應(yīng)的原因及解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宣武区| 昆明市| 桦甸市| 东辽县| 昌平区| 明星| 蛟河市| 房产| 嘉荫县| 千阳县| 永安市| 含山县| 南漳县| 常熟市| 白山市| 安泽县| 灵宝市| 南阳市| 贺兰县| 灌阳县| 黑龙江省| 杭锦后旗| 莎车县| 沅江市| 固阳县| 讷河市| 柘城县| 安康市| 精河县| 渭源县| 柳林县| 双辽市| 辽宁省| 武陟县| 古交市| 乌兰察布市| 延吉市| 上思县| 乐山市| 宽甸| 克什克腾旗|