質問: new view.onclicklistener() { public void onclick(view v) { // my question starts here!!! // if b1 do this // if b2 do this // my question ends here!!! } } } どのボタンがクリックされたかを確認するにはどうすればいいですか?
回答: 最善の方法は、v.getid()の間にswitchnameを指定することです。各ボタンに個別の匿名のonclicklistenerを設定すると、メモリの消費量が増えます。ボタンへのビューのキャストは不要です。切り替えが可能なときにif-elseを使用すると、遅くなり読みにくくなります。 androidのソースでは、if-elseによる参照の比較に気付くことがよくあります。if (b1 == v) { // ... } else if (b2 == v) { なぜ彼らがこのように選んだのか正確にはわかりませんが、それでもうまくいきます。