2011-07-07 5 views
3

私は、同じOnClickListenerを使用して複数のボタンを持つアンドロイドプログラムを持っています。リスナー内部からボタンの動的に割り当てられたテキストを参照できるようにしたいと考えています。テキストを取得するためにプッシュされたボタンを参照する方法はありますか?私は、同じことをする複数のボタン固有のリスナーを作成する必要はありません。あなたのonClick(ビューV)ボタンにキャストすることができてリスナー内部からOnClickListenerのボタンを参照できますか? (アンドロイド)

答えて

12

:のonClickへ

@Override 
public void onClick(View v) { 
    Button clickedButton = (Button)v; 
    // do stuff with it here. 
} 
+0

ああ、それはトリックをやったようでした!ありがとう。 –

0

引数は、リスナーを添付するためのボタンになりますクリックし、発祥の図です。 Buttonオブジェクトを取得するには、Buttonにキャストします。 onClick(View v)

この引数として来

1

使用ビューは、&が働いて、ボタンにキャストすることができます。

0

はい、方法があります。

public abstract void onClick (View v) 

クリックされたビューはonClick()メソッドに渡されます。たとえば、アクティビティのインスタンス変数などのビュー(ボタン)への参照がある場合は、これを行うことができます:

public abstract void onClick (View v) { 
    if (v == firstButton) { 
     //Do some stuff 
    } 
    else if (v == secondButton) { 
     //Do some other stuff 
    } 
} 
関連する問題