setOnclickListner被初始化两次? [英] setOnclickListner is initialized twice?

查看:112
本文介绍了setOnclickListner被初始化两次?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 通code1 =(EditText上)findViewById(R.id.pass code1);    通过code1.setOnKeyListener(新OnKeyListener(){        @覆盖
        公共布尔安其(视图V,INT键code,KeyEvent的事件){
             如果(键code == KeyEvent.KEY code_DEL){
                 通过code1.requestFocus();
                 }
            返回false;
        }
    });

我在onCreate方法这上面code我一直破发点,并尝试调试我看到setOnKeyListner被调用或初始化两次。


解决方案

 通过code1.setOnKeyListener(新OnKeyListener(){        @覆盖
        公共布尔安其(视图V,INT键code,KeyEvent的事件){
             如果(键code == KeyEvent.KEY code_DEL&放大器;&安培; event.getAction()== KeyEvent.ACTION_UP){
                 //pass$c$c1.setText(null);
                 通过code1.requestFocus();
                 返回true;
                 }
            返回false;
        }
    });

添加关键事件解决了这个问题

我的理解是,这是初始化两次,因为它已经创造BOX键并主要采取后续行动。

THATS Y I添加的项下检查,但仍然是一个TWICE初始化,但只能使用一次。

passCode1 = (EditText) findViewById(R.id.passCode1);

    passCode1.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
             if(keyCode == KeyEvent.KEYCODE_DEL){  
                 passCode1.requestFocus();
                 }
            return false;
        }
    });

i have this above code in oncreate method i have kept break points and try to debug i see setOnKeyListner is called or initialized twice.

解决方案

        passCode1.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
             if(keyCode == KeyEvent.KEYCODE_DEL && event.getAction() == KeyEvent.ACTION_UP){  
                 //passCode1.setText(null);
                 passCode1.requestFocus();
                 return true;
                 }
            return false;
        }
    });

ADDING KEY EVENT SOLVED THIS ISSUE

WHAT I UNDERSTOOD IS THAT IT IS INITIALIZED TWICE BECAUSE IT HAS TO CREATE FOR BOX KEY DOWN AND KEY UP ACTION

THATS Y I ADDED KEY DOWN CHECK, STILL IT IS INITIALIZED TWICE BUT USED ONLY ONCE

这篇关于setOnclickListner被初始化两次?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆