티스토리 뷰
앱을 개발하다보면 같은 스타일과 같은 테마를 사용하는 화면들이 많이 있습니다.
이러한 경우에 Style이나 Theme를 사용하여서 개발을 하면 일괄적으로 스타일이 변경이 되므로 개발하고 나면 참 좋습니다.
스타일.
레이아웃XML에 있는 하나의 엘리먼트 단위로 적용할수 있는 속성들의 집합. 텍스트의 컬러와 크기를 지정하는 것이 있겠죠
테마.
어플리케이션 내의 액티비티또는 하나의 액티비티 단위로 적용할 수 있는 속성들의 집합. 메뉴의 텍스트 크기와 색상을 지정하는 테마가 있겠죠.
1. 스타일 만들기
1. res/values안에 임의의 xml파일을 만들어줍니다.
2. <style></style> 엘리먼트를 추가하여 고유한 이름과 상속받을 속성을 지정합니다.
예제.
<style name="TestText" parent="@style/Text"> <item name="android:textSize">15dp</item> <item name="android:textColor">#FF00FF</item> </style>
사용.
<EditText style="@style/TestText" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="ABCD"/>
2. 테마 만들기
1. res.value안에 임의의 xml파일을 만듭니다.
2. <style></style> 엘리먼트를 추가하여 고유한 이름과 상속받을 속성을 지정합니다.
<style name="TestTheme"> <item name="android:windowNoTitle">true</item> <item name="windowFrame">@drawable/image</item> <item name="panelForegroundColor">#FF00FF</item> <item name="panelTextColor">?panelForegroundColor</item> <item name="panelTextSize">14dp</item> <item name="menuItemTextSize">?panelTextSize</item> </style>
이곳에서 사용하는 리소스참조에는 두가지 방법이 있습니다. @와 ? 이렇게 두가지.
의미는 @는 이전에 미리 정의된 리소스를 참조한다는 의미
?는 현재 로드된 테마에서의 리소스 값을 참조한다는 의미
특별한 사항은 없네요.
공부합시다.
'Mobile > Android' 카테고리의 다른 글
[Android]소스상에서 theme와 style 사용하기 (0) | 2015.04.17 |
---|---|
[Android]Eclipse to Studio (0) | 2015.04.16 |
[Android]FragmentPagerAdapter, FragmentStatePagerAdapter의 차이 (0) | 2015.04.14 |
[Android]Fragment - empty constructor that is public Exception (0) | 2015.04.02 |
[Android]Spannable (0) | 2015.03.31 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- MySQL
- Xcode
- cocoapods
- Python
- enum
- tomcat
- war
- CentOS
- nodejs
- ios
- docker
- ubuntu
- Codable
- github
- Gradle
- windows10
- Windows
- golang
- centos8
- SWIFT
- rxswift
- android
- intellij
- Kotlin
- Linux
- Java
- Spring
- go
- git
- php
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함