検索

ホームページ  >  に質問  >  本文

android - Button设置了focusable="false",还怎么监听到事件?

由于使用了onItemClickListener,存在Button的时候ListView不能监听到点击事件,所以对Button做了如下处理

    android:focusable="false"
    android:focusableInTouchMode="true"

对Button的父类容器做这样的处理

    android:descendantFocusability="blocksDescendants"

之前的ListView监听问题解决了
但是,不知道后续应该怎么做了,我想在button上也添加事件,但是我理解的状态是:目前不能添加事件了,我理解的对不对,请各位大神指教

黄舟黄舟2771日前570

全員に返信(2)返信します

  • 高洛峰

    高洛峰2017-04-18 09:17:19

    ListView が提供する onItemClick イベントは使用しないでください。
    ItemView の初期化時に onClick イベントを登録します。
    次に、Button の onClick イベントを登録します。

    返事
    0
  • 怪我咯

    怪我咯2017-04-18 09:17:19

    あなたの理解は間違っています。

    ListViewItemView フォーカス可能な View が使用されている場合、ItemView のクリック イベントはそのタイプの View によってインターセプトされます。この問題を解決するには、レイアウトで RootView に次の属性を設定するだけです。 xml を使用して上記の問題を解決するには:

    リーリー

    それでも ItemViewChildViewOnClickListener を設定したい場合は、View.setOnClickListener(OnClickListener) を直接呼び出してください。

    返事
    0
  • キャンセル返事