안드로이드 스튜디오 FrameLayout 뒤 배경 클릭안되게 하는 법
2020. 8. 30. 09:56
반응형
제 어플리케이션같은 경우는 우측 상단에 별표를 클릭하면 아래 사진과 같이 FrameLayout으로 설정창이 나옵니다.
버튼이 없는 부분인 파란색 동그라미로 체크된 부분을 클릭하거나, 해당 부분에서 스크롤을 하면 뒷 부분의 리사이클러 뷰가 반응을 했습니다. 예를들면 지도를 클릭하면 뒷 부분의 리사이클러 뷰의 아이템이 클릭 된 것으로 인식해서, 아이템 리스너로 반응을 하던 오류가 있었습니다.
이 방법은 의외로 간단하게 해결됩니다.
<FrameLayout
android:id="@+id/cbnu_framelayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<LinearLayout
android:id="@+id/cbnu_linearlayout_filter"
android:layout_width="match_parent"
android:layout_height="380dp"
android:layout_gravity="top|center_horizontal"
android:layout_marginLeft="15dp"
android:layout_marginTop="12dp"
android:layout_marginRight="15dp"
android:background="@drawable/applebackground_radius"
android:orientation="vertical"
android:visibility="invisible"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true">
맨 아래에 보시면 clickable, focusable, focusableInTouchMode를 true로 한 뒤 추가해주시면 됩니다. clickable만 추가해도 작동은 하지만, clickable만 추가했을 시 focusable도 추가해주라는 워닝이 나와서 focusable과 focusableInTouchMode도 같이 추가해줍니다.
이렇게 해주시면 정상적으로 뒤에 있는 배경이 반응하지 않습니다.
stackoverflow.com/questions/16377593/how-to-disable-behind-view-click-event-framelayout
이 쪽 stackoverflow를 참고하셔도 좋습니다. 그렇지만 이 블로그가 더 친절하게 설명해드립니다.
끝까지 읽어주셔서 감사합니다.
궁금한 점이나 틀린 부분이 있다면 댓글로 남겨주세요.
댓글이 달리면 저에게 알림이 와서 바로 확인할 수 있으니 최대한 빠른 시일 내에 답변 드리도록 하겠습니다.
반응형
'프로그래밍 > 안드로이드+코틀린' 카테고리의 다른 글
안드로이드 플랫폼 구조(Platform Architecture) (0) | 2020.12.19 |
---|---|
해결방법 :prepareKotlinBuildScriptModel Task fails in a Java project (0) | 2020.11.25 |
PhotoView, ViewPager, java.lang.IllegalArgumentException: pointerIndex out of range 에러 (0) | 2020.08.27 |
이미지 호스팅 서버 추천, 구글은 안좋다 (0) | 2020.08.26 |
장고 서버 외부 접속, 휴대폰망, 다른 컴퓨에서 접속하는 법 ngrok 사용법 (0) | 2020.08.26 |