Androidでは、ボタンのクリックを処理する3つの一般的な方法があるようですが、メソッド間にはどの程度の違いがありますか?そして、何らかの形で彼らの「より良い」ものがありますか?私が見ておくAndroidでクリックされたボタンを処理する方法は?
の3つの方法がある:
匿名クラス
は、例えば、その後、setOnClickListener
に新しい匿名クラスを渡し、それのIDでボタンを探しますonCreate
findViewById(R.id.myButton).setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// .. Whatever
}
});
に、例えば、OnClickListener
を実装し、setOnClickListener
にthis
を渡し、その後、ボタンIDに基づいて、switch文を使用
をOnClickListener実装onCreate
findViewById(R.id.myButton).setOnClickListener(this);
と、このようonClick
を使用し、代わりにあなたのボタンIDを与えるあなたの活動のためのXMLレイアウトで
、atribute onClick
public void onClick(View v) { switch(v.getId()) { case R.id.myButton: // ... whatever ... break; } }
のような使用のonClick XMLを実装中:
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:onClick="buttonClicked"
android:text="Button" />
は、このようなあなたのAcitiviyでbuttonClicked
方法があります。現時点で
public void buttonClicked(View v) {
// ... whatever ...
}
私は、XML属性を使用する傾向があるが、それは、コードの最低額を含むので、それはただのです。他の方法はいつ使うべきですか?
+1第3の方法を説明するため。私はAndroidを学んでいるだけで、 'onClick'属性を認識していませんでした。 – Mike