Fragment
の中に表示されているExpandableListView
があります。ユーザーが強調表示された矢印をクリックすると、Fragment
を変更する適切な方法は何ですか?また、クリックされたボタンのグループインデックス(ハイライトされた矢印のインデックス0)を取得するにはどうすればよいですか?ExpandableListViewグループ内でボタンをクリックしたときにフラグメントを変更する方法はありますか?
1
A
答えて
0
ExpandableListView.OnGroupClickListenerを使用してください。
リスナーを実装し、それをクリックしたときに呼び出されるメソッドは次のとおりです。
void onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
// int position and other parameters give you everything you need to know about the click
}
あなたも細かく制御したい場合は、実装することができ、リスナーExpandableListView.OnGroupCollapseListenerとExpandableListView.OnGroupExpandListenerもあります。
、それを実装OnGroupClickListenerを実装するオブジェクトを宣言、または匿名クラスを作成するには:
ExpandableListView.OnGroupClickListener mListener =
new ExpandableListView.OnGroupClickListener({
public void onGroupClick(ExpandableListView parent, View v, int groupPosition, long id){
//handle whatever you want to do on the click in this method
}
});
次に、あなたのフラグメントビューの内側からあなたExpandableListViewを取得する(あなたはおそらくそれをこれを行うことになるだろうではないことは)大丈夫です場合の方法は、私はちょうど、しかしここに推測している:
ExpandableListView listView =
(ExpandableListView) this.getView()
.findViewById(R.id.whatever_you_set_your_expandablelistview_id_to);
そして最後に、あなたのExpandableListViewにリスナーを追加します。
listView.setOnGroupClickListener(mListener);
グループがクリックされるたびにリスナーの "onGroupClick"が呼び出されます。おそらく、ExpandableListViewごとに1つのリスナーしか追加できないことに注意してください。 Also, be careful of Context leaks when using anonymous classes for listeners on views!
関連する問題
- 1. ボタンをクリックしたときにdiv内のテキストを変更する方法はありますか?
- 2. RelativeLayout内にExpandableListViewをネストする方法はありますか?
- 3. ボタンをクリックするとExpandableListView
- 4. フォームのボタンをクリックしたときのボタンの変更方法
- 5. ボタンをクリックしたときにuiwebviewのURLを変更する方法は?
- 6. Androidでボタンをクリックしたときにスピナーアイテムを変更する方法
- 7. ボタンをクリックすると、あるフラグメントから別のフラグメントに移動します。
- 8. ExpandableListView GroupItemを折りたたんでChildItem内のボタンをクリックする
- 9. Jquery-Mobile:ボタンをクリックしたときに内部ページを更新する方法
- 10. グループからボタンをクリックするイベントはありますか?
- 11. ボタンをクリックしたときにのみ変数の値を返す方法はありますか?
- 12. フラグメントからフラグメントを開くボタンをクリックしたとき
- 13. ボタンをクリックするとフラグメントの色が変わります
- 14. アンカーをクリックしたときにツールチップを変更する方法はありますか?
- 15. ユーザーがボタンをクリックしたときにImageButtonのイメージを変更する方法
- 16. ボタンをクリックしたときに画像を変更する方法
- 17. メニューオプションをクリックしたときに画像ボタンを変更する方法
- 18. ボタンをクリックしたときのボタンのテキストを変更する
- 19. ボタンを押したときにhtmlのタグの色を変更する方法はありますか?
- 20. (ExpandableListView)、ボタンをクリックすると、ImageView
- 21. フラグメント内のボタンをクリックするとダイアログ/ポップアップを表示できますか?
- 22. 編集ボタンをクリックしたときにテキストボックス内で変更するラベルasp.net
- 23. 後にモーダル内のボタンをクリックする方法はありますか?
- 24. クリックするとボタンの内容と色を変更します。
- 25. 一時停止ボタンをクリックしたときにMediaElementでクリックイベントを書き込む方法はありますか?
- 26. ログアウト後に戻るボタンをクリックしたときにログインページにリダイレクトする方法はありますか?
- 27. ボタンがクリックされたときにテーブルビューでボタンイメージを変更する方法
- 28. ボタンをクリックしたときに編集テキストボックスを動的に追加する方法はありますか?
- 29. 閉じるボタンをクリックしたときにコンソールウィンドウプログラムに通知する方法はありますか?
- 30. ボタンをクリックすると、フラグメント内のTextViewをどのように更新できますか?
もし私が間違っていれば訂正しますが、ユーザーがグループをクリックしたときにExpandableListViewのデフォルトのグループクリックを展開/折りたたむように変更しますか? – John
いいえ、イベントリスナーが定義されているだけでイベントが発生したときにあなたに通知します*。 Viewが正常に動作するのを妨げるものではなく、イベントが発生したときに呼び出されるだけです。私はより詳細な答えを提供するよう編集しています。 –
@ジョンが答えに例を追加しました。 –