国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 错那县| 华容县| 行唐县| 沧源| 于都县| 漯河市| 凤山县| 西峡县| 馆陶县| 阜宁县| 岑巩县| 五峰| 新沂市| 岫岩| 朝阳县| 乐都县| 许昌市| 博爱县| 柏乡县| 昭通市| 佛山市| 靖远县| 阳山县| 隆尧县| 甘孜| 镇原县| 吐鲁番市| 株洲市| 天柱县| 上栗县| 衢州市| 乌拉特前旗| 喀喇沁旗| 陵水| 乐山市| 大方县| 乐东| 横山县| 论坛| 肇源县| 峡江县|