btn_Login.setOnClickListener(this);
アンドロイドスタジオで。onclickリスナー(this)は何を意味していますか?
私はこれを無数の場所で見ました。これは何を意味するのでしょうか?私はthis
がどのように動作するのか知っていますが、そのとき呼び出されるリスナは何ですか?
この例からである。この例ではLink
btn_Login.setOnClickListener(this);
アンドロイドスタジオで。onclickリスナー(this)は何を意味していますか?
私はこれを無数の場所で見ました。これは何を意味するのでしょうか?私はthis
がどのように動作するのか知っていますが、そのとき呼び出されるリスナは何ですか?
この例からである。この例ではLink
16個のボタンとすべてのボタンがあるとします。 s setOnclicklistener
これは、あなたのクラスでこれと同様のコードの繰り返しをたくさん作成していることを意味します。そして、それはあなたのコードを醜いものにします。これはコードを書くための効率的な方法でもありません。あなたのコードを効率的にするには、あなたの活動にOnClickListener()
を実装してから、各ボタンに対してbuttonX.setOnClickListener(this)
を使用する必要があります。オーバーライドonClick
メソッドを使用します。このメソッドでは、Switch caseブロックを使用するか、elseボタンを押して、どのボタンが押されたかを識別できます。だからonClick
メソッドでは、ボタンのIDを与える必要があります。オーバーライドonClick
方法
@Override
public void onClick(View view) {
switch(view.getId){
case R.id.buttonX:
// Do something
}
その本 プライベートボタンbtn_Loginのように定義されました。
ボタンはクラス です。onClickListenerは、setOnClickListenerメソッドを使用しているリスナーを設定するリスナーです。
次回以降、そのような種類の説明が必要な場合は別のスレッドに投稿しないでください。その質問自体にコメントを追加してください。
は、それはウィジェットのクリックで発生するイベントを指定することができますリスナーですalsina
@augustありがとうございました。
クラスがView.OnClickListenerを実装する場合、メソッドpublic void onClick(View v)
の各ボタンのクリックを定義できます。キーワードthis
は、方法onclickを参照してください。クラスファイルにたくさんのボタンがある場合、この方法を使用するとよいでしょう。
button1.setOnClickListener(this);
button2.setOnClickListener(this);
とその定義のOnCreateメソッドを定義します。Createメソッドで次のコードを定義することができます。たとえば、次のように素人の面では
public void onClick(View v){
int id= v.getId();
switch (id){
case R.id.btn1: {
//do sth
//break;
}
case R.id.btn2: {
//do sth
//break;
}
...
}
}
btn_loginたびbtn_Login.setOnClickListener(this);
を書き込むことにより
プログラムはonclickの方法public void onClick(View v)
に行くと、あなたは何の方法で書くことができ押されますボタンを押したときにやりたいこと
は、それが "リスナー" と呼ばれる実装し、この後
:
はこれを使用し、各ボタンの活動で
OnClickListener
を実装します。あなたがいるクラスの定義を見て、それが興味深い何かを実装しているかどうかを見てください。 – ajb
この最初の記事は、https://docs.oracle.com/javase/tutorial/java/concepts/interface.html – peter
を読んでみてください。これはAndroid向けの質問ではありません。純粋に簡単にJavaの質問です。 – JoxTraex