2014-11-08 72 views
-1

我已經做了EditText點擊,我在Java類中我做了這個私人無效:爲什麼做這個吐司(Android Studio中)只在第二次點擊

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();// 
       } 
      }); 
    } 

...問題是在模擬器中,我必須按兩次(EditText)敬酒工作,我想知道爲什麼,以及如何解決它... 總結:我想要的是按它一次,吐司和鍵盤(不是問題)出現 。

+0

什麼時候該方法被調用? – Bene 2014-11-08 12:00:52

+0

當用戶按下EditText ... – ANDDEV 2014-11-08 12:47:07

+1

我不明白你爲什麼奇怪/不知道你必須按兩次。你必須按下至少一個來「安裝」顯示「Toast」消息的「OnClickListener」。因此在完成之前它不能做任何事情。那麼有什麼魔法可以改變呢?在「Activity」啓動時將此偵聽器「安裝」如何? – Tom 2014-11-08 14:01:26

回答

0

你爲什麼不這樣做呢?

private void incaseofclick() { 

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

程序如何知道它被引用到EditText中? – ANDDEV 2014-11-08 13:21:28

+1

因爲您在.xml中編寫了類似「android:onClick =」incaseofclick「」的內容,或者在onCreate方法中設置了clicklistener,例如。 – Bene 2014-11-09 03:34:53