2011-01-11 13 views
0

私は、(LinearLayoutの)カスタムコンポーネントのリストを表示するアクティビティを持っています。各コンポーネントは、データベース内のユーザーを表し、ボタンなどを含みます。カスタムコンポーネントのボタンをクリックすると、メッセージをアクティビティに戻してユーザーを保存します。ボタンは、ユーザーのIDを認識します。イベントの適切な使用

私はこの活動にどのように連絡するのが最善か疑問に思っていましたか?ボタンのクリックイベントでは、新しいイベントをディスパッチする必要があります(アクティビティにキャッチします)。もしそうなら、ユーザーIDをイベントに追加できますか?私はイベントの新人ですが、おそらく私自身のカスタムイベントタイプを作成する必要があると思いますか?

私が考えた他の方法は、アクティビティの参照をコンポーネントに渡すことでした。そのため、ボタンはアクティビティのメソッド(例: 'component.parentActivity = this')を呼び出すことができますが、私はそれが正しい方法であるかどうかは分かりません。

ありがとうございます。

答えて

0

View.OnClickListenerインターフェイスを実装できます。実装する必要のあるonClickメソッドには、View(クリックされたもの)が渡されます。だからあなたは何がクリックされたかについての詳細をすべて知っていて、そこからあなたが望むようにそれを扱うべきです。

私があなたの質問で明らかにしていないことは、「コンポーネント」の意味ですか?それはカスタムビューですか?またはビューのレイアウト?または他の?

+0

申し訳ありません、これはカスタム表示ですこれは、LinearLayoutを拡張するJavaクラスです。その中で、子ビューとその他のいくつかのボタンとしてボタンを追加します。ヒントをありがとう。イベントのようなサウンドが適切な方法であり、私のアクティビティはView.OnClickListenerを実装してイベントを捕捉する必要があります(私が誤解している場合は修正してください)。ありがとうございます – Richard

+0

それは素晴らしい感謝を働かせます。自分のイベントタイプを作成しなければならないと思っていましたが、標準のイベント処理は必要なものに対してうまく動作します。 – Richard