총 게시물 1,104건, 최근 0 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[TIP&TECH]

TabLayout ClickEvent

글쓴이 : 에찌 날짜 : 2017-04-21 (금) 15:15 조회 : 614
글주소 : http://www.androidside.com/B56/32997
 
  바이럴영상 제작 전문 인디고
15년 경력 바이럴 영상 제작, 프로덕션 INDIGO
www.pentacle.co.kr
  재능을 거래하는 문화 재능넷
저렴한 비용으로 디지털영상제작 재능을 거래하는 신개념 재능거래 오픈마켓
www.jaenung.net
  브랜드 비포 애프터 노마디움
컨셉을 만드는 광고회사, 가성비 높은 마케팅파트너, 맥락 있는 브랜드 스토리텔링
nomadium.kr
신청하기


TabLayout을 사용하시는 분들이라면 onClickListener을 사용하실수 없음을 아실듯합니다.

저도 구글링해가면서 계속 뒤져보았지만 클릭하였을 경우 이벤트 받는 방법을 알 수가 없더군요.

하지만!

TabLayout에는 addOnTabSelectedListener 가 있습니다.

누르면 onTabSelected가 호출이 되죠!

하지만 여기서 또 문제!

처음 Tab이 그려지면서 position이 0인 탭은 아~~~~~~무리 클릭해도 onTabSelected가 호출되지않는 다는 것입니다.

다른 Tab을 선택해야만 되죠.

하지만!

addOnTabSelectedListener 을 사용하시면 
onTabReselected 를 보실 수 있을 겁니다.

고~녀석이 첫번째 tab을 클릭했을 때 이미 선택되어진 것이라 Reselected 로 호출이 되는 것이죠!

모르시는 분들을 위해 간단히 소스만 보여드리겠습니다.

mHeaderTabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
Logger.d("onTabSelected : " + tab.getPosition() + " " + tab.getText().toString());
}

@Override
public void onTabUnselected(TabLayout.Tab tab) {

}

@Override
public void onTabReselected(TabLayout.Tab tab) {
Logger.d("onTabReselected : " + tab.getPosition() + " " + tab.getText().toString());
}
});

네.
이렇게 생겼습니다.
현재 선택한 탭은 onTabSelected 로 사용하시고
선택되었던 탭은 onTabReselected로 사용하시면 됩니다.

그런데!
onTabUnSelected는 무엇이냐!

만약 0번째 탭이 선택되어져있는데
1번째 탭을 선택하면
onTabUnSelected에는 0번째 탭이 언셀렉됬다고 호출되어집니다!

네 그렇습니다 이렇게 사용하면 됩니다 ^^

(근데 tabLayout.setOnClick..은 호출도 안되는데 왜 있는건지... 최~~~~상단 뷰인 View때문인 듯 합니다..
머..제가 못쓰는 것일 수도 있습니다만..ㅋㅋ)

쭉 따라가보니 
@UiThread
public class View implements Drawable.Callback, KeyEvent.Callback,
AccessibilityEventSource {

이렇게 View를 상속받고있더군요 ㅋㅋ 

도움이 되셧으면해용~ 전 이만 :)








추천 버튼을 클릭하면 추천한 자와 추천받은 자 모두에게 포인트가 지급됩니다.

이전글  다음글  목록 글쓰기

총 게시물 1,104건, 최근 0 건 안내 RSS
번호 분류 제목 글쓴이 날짜 추천 조회
1104 강좌  [국비지원강좌] 안드로이드 기반 스마트콘텐… 오호라그래 10-18 0 71
1103 강좌  [무료] 앱만들기 마스터 강의 20강 전체 무료 씨드래곤아트 09-29 0 271
1102 TIP&TECH  리스트뷰에서 스위치,체크박스사용시 4 에찌 05-08 0 852
1101 TIP&TECH  뷰(RecyclerView/...)에 Max Height 주기/[Android] 김병희라고요 04-26 0 588
1100 TIP&TECH  TabLayout ClickEvent 에찌 04-21 0 615
1099 TIP&TECH  현재 사용하고 있는 어플 foreground인지 backgroun… 4 에찌 04-14 1 1068
1098 TIP&TECH  안드로이드 Drawble 에 해상도 마다 이미지를 … 1 에찌 04-14 0 735
1097 TIP&TECH  fragment 에서 ButterKnife 사용 시 resource가져올 때… 1 에찌 04-12 0 562
1096 TIP&TECH  Youtube 및 facebook 동영상 업로드 할때 1 희망과꿈을 03-28 0 653
1095 TIP&TECH  google service lib 가져올 때 3 에찌 03-20 2 833
1094 소스코드  CentralRV 프로젝트 - RecyclerView 가로/세로 가운… 1 김병희라고요 01-30 1 1537
1093 TIP&TECH  번개검색 시스템/[Android] 2 김병희라고요 12-29 2 1244
1092 TIP&TECH  RecyclerView 특정 포지션으로 스크롤 - smoothScroll… 1 김병희라고요 12-12 1 1253
1091 강좌  왕앱따 107. 자바/C++ 파일읽기 속도 비교/[Androi 김병희라고요 11-26 0 1413
1090 강좌  왕앱따 106. C++ 동영상 강좌/[Android] 김병희라고요 11-23 0 1493
1089 자료  박근혜를 탄핵할 수 있는 어플을 만들었어요. 3 씨드래곤아트 11-23 0 1810
1088 소스코드  AOSP용 한글 키보드 입력키 엘카이저 11-17 1 1319
1087 강좌  addDrawerListener, setDrawerListener(deprecated)/[Android] 김병희라고요 11-02 2 1685
1086 강좌  왕앱따 103. 아이콘 반복클릭 테스트/[Android] 김병희라고요 11-01 0 1225
1085 강좌  왕앱따 100. 안드로이드 왕초보의 앱개발 따라… 김병희라고요 10-29 0 1610
 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  다음  맨끝
 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기