2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Viewに付与したOnClickListenerを解除する方法

Posted at

何がやりたかったのか

画面全体を覆うViewにOnClickListenerを付与して、チュートリアル操作表示を消したかった。
消した後は、後ろのViewに対してタッチ・スクロール操作が効くように。

環境

端末:Android5.0
開発環境:Android Studio2.3

やってみたこととその結果

setVisibility(View.INVISIBLE)

だめ。クリックを拾ってしまう。

setOnClickListener(null)

だめ。クリックは拾わないのだが、背後のViewに対するタッチイベントが無効になってしまう。

Viewそのものを消す

いい。xmlを分割してチュートリアル操作表示を分離できるし、最終的な動作も期待通りだ。しかし、上の方法を推奨している記事等を見ていて首を傾げる俺がいた。

最終的な解

setClickable(false)

成功。期待通りの動作になった。
Clickableをxmlで指定してなくても動作する。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?