透明なコントロールクリックイベントの透過的な解決方法

953 ワード

アンドロイドの開発では、透明なコントロールがポップアップされると、クリックが貫通する場合があります.すなわち、フロートがポップアップされた後、フロートの下のコントロールをクリックすると、隠されたコントロールはクリックイベントに応答することができ、解決方法は以下の通りです.
方法1.フライアウトフロートの空間に次の属性を追加する.
android:clickable="true"
このプロパティを使用すると、フローティングレイヤがフォーカスを取得し、下位コントロールの応答イベントを遮断できます.
方法2:
ポップアップフロートについて次の処理を行います.(mViewはポップアップフロートを指します)
mView.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View arg0, MotionEvent arg1) {
        return true;
    }
});
この方法により、ポップアップフロート層がタッチイベントを遮断し、貫通を防止する