0

ExpandableListViewを使用してExpandableListActivityから拡張されたアクティビティを作成しました。アイテムのレイアウトにボタンを追加しました。SimpleExpandableListAdapter派生クラスを使用して、ボタンにクリックリスナーを提供しました(関連性がない場合、ボタンの一部は可視化状態になりました)。ボタンが表示されていない(なくなっている)場合は、子ビューのイベント(クリック、ロングクリック)を処理できます。ただし、ボタンが表示されている場合、リスナーはイベントをキャッチせず、子の状態の変化も非表示になります(フォーカス、選択...)。子ビューとして、いくつかのTextViewとボタンを備えたRelativeLayoutを使用します。

どうすればそのイベントをキャッチできますか?

アドバイスありがとうございます。

4

1 に答える 1

2

ボタンのフォーカス可能をfalseに設定しました。

android:focusable=false

これはこのように機能します。クリック可能なタイプの要素がある場合は常に、デフォルトでフォーカスを取得し、子ビューのクリックイベントが応答することを許可しません。解決策は、焦点を偽に向けることであり、他の方法はありません。しかし、それでもあなたはClickListenerあなたのボタンのために働くこともできます。そこに問題はありません。

于 2012-05-24T11:27:26.943 に答える