Java 为什么这个Toast(Android Studio)只在第二次点击时起作用

Java 为什么这个Toast(Android Studio)只在第二次点击时起作用,java,string,android-studio,Java,String,Android Studio,我制作了一个EditTextclickable,我在Java类中制作了这个私有的void: private void incaseofclick() { EditText Ct=(EditText) findViewById(R.id.CODIGOnumero);//The EditText Ct.setOnClickListener(new View.OnClickListener() { @Override

我制作了一个
EditText
clickable,我在Java类中制作了这个私有的void:

private void incaseofclick() {
            EditText Ct=(EditText) findViewById(R.id.CODIGOnumero);//The EditText
            Ct.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Toast.makeText(getApplicationContext(),R.string.INDICA3, Toast.LENGTH_LONG).show();//
                }
            });
    }
。。。问题是,在emulator中,我必须按两次(
EditText
)才能让toast正常工作,我想知道为什么,以及如何修复它。。。 小结:我想要的是按下它一次,烤面包片和键盘(没问题)就会出现
.

你为什么不这样做呢

private void incaseofclick() {

       Toast.makeText(getApplicationContext(),R.string.INDICA3, Toast.LENGTH_LONG).show();
}

这个方法什么时候被调用?当用户按下EditText…我不明白为什么你必须按下两次是奇怪的/未知的。您必须至少按一个按钮才能“安装”显示
Toast
消息的
OnClickListener
。因此,在完成这项工作之前,它不能做任何事情。那么,改变这一点需要什么魔力呢?在
活动
启动时“安装”此侦听器如何?此代码在您单击editText之前或时执行?程序如何知道它引用了editText?因为您在.xml中编写了类似“android:onClick=“incaseofclick”的内容,或者更早地在onCreate方法中设置了clicklistener。