Android에서 TabLayout에서 탭했을 때 배경색을 변경하는 코드는 따로 없기 때문에 drawable을 만들어주어야 합니다.
1. 기본 배경색
drawable > tab_background_unselected.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/white" />
</shape>
2. 선택된 탭 배경색
drawable > tab_background_selected.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#0070C0" />
</shape>
3. 최종 배경색 설정
drawable > tab_background.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/tab_background_selected" android:state_selected="true" />
<item android:drawable="@drawable/tab_background_unselected" android:state_selected="false" android:state_focused="false" android:state_pressed="false" />
</selector>
4. TabLayout에 배경색으로 설정
app:tabBackground="@drawable/tab_background"
결과화면
'Android' 카테고리의 다른 글
[Android-java] ScrollView 사용법 및 에러 해결 (0) | 2021.08.26 |
---|---|
[Android-java] 서버 통신 시 SocketTimeoutException 에러 (2) | 2021.08.25 |
[Android-Java] Spinner를 이용해 드롭다운 리스트 구현하기 (0) | 2021.08.25 |
[Android-Java] ViewPager와 TabLayout을 이용해 Custom 탭 만들기 (0) | 2021.03.18 |
[Android-java] Retrofit2 적용하기 / 로그인 구현 (3) | 2021.03.12 |