안 드 로 이 드:theme 와 app:popupTheme 의 역할,그리고 안 드 로 이 드 3.0 이하 에서 역할 을 하지 않 는 문제 해결

1835 단어 Lollipopandroid
안 드 로 이 드 5.0 에 머 티 리 얼 디자인 언어 가 추 가 됐 는데 정말 멋 있 습 니 다.기 존의 Actionbar 대신 Toolbar 를 사용 하 는 것 이 훨씬 유연 합 니 다.
이전에 우 리 는 application 이나 activity 에서 만 theme 테 마 를 사용 할 수 있 었 지만 안 드 로 이 드 5.0 에서 View 에 theme 테 마 를 사용 할 수 있 었 다.이 View 와 그의 서브 View 는 모두 이 theme 를 사용 하여 우리 에 게 매우 큰 유연성 을 주 었 다.
View 에 theme 를 추가 하 는 방법 은:
android:theme="당신 의 theme"
예 를 들 면:
        

위의 코드 세 션 은 이 toolbar 에 theme 를 추가 하 였 습 니 다.마지막 속성 app:popupTheme 을 볼 수 있 습 니 다.이 속성 은 바로 우리 가 팝 업 하 는 메뉴 의 스타일 을 사용자 정의 하 는 것 입 니 다.이전 Actionbar 의 넘 치 는 메뉴 에서 우 리 는 그의 스타일 을 사용자 정의 할 수 없습니다.당신 의 theme 에 따라 흑백 두 가 지 를 선택 할 수 있 습 니 다.스스로 정의 할 수 없습니다.팝 업 메뉴 의 스타일 을 정의 할 수 있 습 니 다.예 를 들 어 우리 의 요구:
ActionBar 는 흰색,ActionBar Overflow 는 흰색 바탕 에 검은색 글자 가 나 옵 니 다.
기본 적 인 상황 에서 우 리 는 theme 를 안 드 로 이 드:Theme.Holo.Light.Dark Action Bar 로 사용 합 니 다.그러면 Action Bar 문 자 는 흰색 이 고 Action Bar Overflow 는 검은색 바탕 에 흰색 글자 가 나 옵 니 다.그러나 우 리 는 위의 요구 사항 인 흰색 바탕 에 검은색 글 자 를 원 합 니 다.이것 은 안 드 로 이 드 5.0 이전에 할 수 없 었 습 니 다.지금 은 app:popupTheme 이라는 속성 으로 실현 할 수 있 습 니 다.예 를 들 어 저 는 toolbar 의 app:popupTheme="ThemeOverlay.AppCompat.Light"를 사용 할 수 있 습 니 다.그러면 이 Overflow 는 흰색 바탕 에 검은색 글 자 를 팝 업 할 수 있 습 니 다.
마지막 문 제 는 안 드 로 이 드:theme 이라는 속성 을 사용 합 니 다.안 드 로 이 드 3.0 이상 에 서 는 View 와 하위 View 에 적용 할 수 있 습 니 다.그러나 안 드 로 이 드 3.0 이하 에 서 는 현재 View 에 만 적용 할 수 있 습 니 다.하위 View 가 역할 을 하지 못 합 니 다.이 theme 에 사용 해 야 할 모든 View 를 추가 해 야 합 니 다.물론 안 드 로 이 드 3.0 이하 의 남 겨 진 기 계 는 매우 적 습 니 다.만약 네가 이 판본 에 적합 하지 않다 면,너 는 이것 을 완전히 무시 할 수 있다.

좋은 웹페이지 즐겨찾기