
正文
【转】android中的Style与Theme
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Android默认情况下提供了一些实用的主题样式,比如说Theme.Dialog可以让你的Activity变成一个窗口风格,而Theme.Light则让你的整个Activity具有白色的背景,而不是黑色那么沉闷。具体使用方法很简单在Androidmanifest.xml文件中对你的Activity节点上加入些代码,如图1所示:
越来越多互联网企业都在Android平台上部署其客户端,为了提升用户体验,这些客户端都做得布局合理而且美观.......Android的Style设计就是提升用户体验的关键之一。Android上的Style分为了两个方面:
1,Theme是针对窗体级别的,改变窗体样式;
2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式。
越来越多互联网企业都在Android平台上部署其客户端,为了提升用户体验,这些客户端都做得布局合理而且美观.......Android的Style设计就是提升用户体验的关键之一。Android上的Style分为了两个方面:
1,Theme是针对窗体级别的,改变窗体样式;
2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式。
Android系统的themes.xml和style.xml(位于系统源代码frameworks\base\core\res\res\values\)包含了很多系统定义好的style,建议在里面挑个合适的,然后再继承修改。
标签:
Android SDK
代码片段(5)[全屏查看所有代码]
1. [图片] tu1.jpg
2. [图片] 效果图.gif
3. [代码]themes.xml
?
1
2
3
4
5
6
7
8
9
10
11
<!-- Window attributes -->
<
item
name
=
"windowBackground"
>@android:drawable/screen_background_dark</
item
>
<
item
name
=
"windowFrame"
>@null</
item
>
<
item
name
=
"windowNoTitle"
>false</
item
>
<
item
name
=
"windowFullscreen"
>false</
item
>
<
item
name
=
"windowIsFloating"
>false</
item
>
<
item
name
=
"windowContentOverlay"
>@android:drawable/title_bar_shadow</
item
>
<
item
name
=
"windowTitleStyle"
>@android:style/WindowTitle</
item
>
<
item
name
=
"windowTitleSize"
>25dip</
item
>
<
item
name
=
"windowTitleBackgroundStyle"
>@android:style/WindowTitleBackground</
item
>
<
item
name
=
"android:windowAnimationStyle"
>@android:style/Animation.Activity</
item
>
4. [代码]styles.xml
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
resources
>
<
style
name
=
"TextView"
>
<
item
name
=
"android:textSize"
>18sp</
item
>
<
item
name
=
"android:textColor"
>#008</
item
>
<
item
name
=
"android:shadowColor"
>@android:color/black</
item
>
<
item
name
=
"android:shadowRadius"
>2.0</
item
>
</
style
>
<
style
name
=
"EditText"
>
<
item
name
=
"android:shadowColor"
>@android:color/black</
item
>
<
item
name
=
"android:shadowRadius"
>1.0</
item
>
<
item
name
=
"android:background"
>@android:drawable/btn_default</
item
>
<
item
name
=
"android:textAppearance"
>?android:attr/textAppearanceMedium</
item
>
</
style
>
<
style
name
=
"Button"
>
<
item
name
=
"android:background"
>@android:drawable/edit_text</
item
>
<
item
name
=
"android:textAppearance"
>?android:attr/textAppearanceMedium</
item
>
</
style
>
</
resources
>
5. [代码]main.xml
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
LinearLayout
xmlns:android
=
"http://schemas.android.com/apk/res/android"
android:orientation
=
"vertical"
android:layout_width
=
"fill_parent"
android:layout_height
=
"fill_parent"
>
<
TextView
android:layout_width
=
"fill_parent"
android:layout_height
=
"wrap_content"
android:text
=
"@string/hello"
style
=
"@style/TextView"
/>
<
EditText
android:id
=
"@+id/EditText01"
android:layout_height
=
"wrap_content"
style
=
"@style/EditText"
android:layout_width
=
"fill_parent"
android:text
=
"类似Button的EditText"
></
EditText
>
<
EditText
android:id
=
"@+id/EditText02"
android:layout_height
=
"wrap_content"
android:layout_width
=
"fill_parent"
android:text
=
"普通的EditText"
></
EditText
>
<
Button
android:id
=
"@+id/Button01"
android:layout_height
=
"wrap_content"
style
=
"@style/Button"
android:layout_width
=
"fill_parent"
android:text
=
"类似EditText的Button"
></
Button
>
</
LinearLayout
>
1. [图片] tu1.jpg
2. [图片] 效果图.gif
3. [代码]themes.xml
?
|
1
2
3
4
5
6
7
8
9
10
11
|
<!-- Window attributes -->
<
item
name
=
"windowBackground"
>@android:drawable/screen_background_dark</
item
>
<
item
name
=
"windowFrame"
>@null</
item
>
<
item
name
=
"windowNoTitle"
>false</
item
>
<
item
name
=
"windowFullscreen"
>false</
item
>
<
item
name
=
"windowIsFloating"
>false</
item
>
<
item
name
=
"windowContentOverlay"
>@android:drawable/title_bar_shadow</
item
>
<
item
name
=
"windowTitleStyle"
>@android:style/WindowTitle</
item
>
<
item
name
=
"windowTitleSize"
>25dip</
item
>
<
item
name
=
"windowTitleBackgroundStyle"
>@android:style/WindowTitleBackground</
item
>
<
item
name
=
"android:windowAnimationStyle"
>@android:style/Animation.Activity</
item
>
|
4. [代码]styles.xml
?
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
resources
>
<
style
name
=
"TextView"
>
<
item
name
=
"android:textSize"
>18sp</
item
>
<
item
name
=
"android:textColor"
>#008</
item
>
<
item
name
=
"android:shadowColor"
>@android:color/black</
item
>
<
item
name
=
"android:shadowRadius"
>2.0</
item
>
</
style
>
<
style
name
=
"EditText"
>
<
item
name
=
"android:shadowColor"
>@android:color/black</
item
>
<
item
name
=
"android:shadowRadius"
>1.0</
item
>
<
item
name
=
"android:background"
>@android:drawable/btn_default</
item
>
<
item
name
=
"android:textAppearance"
>?android:attr/textAppearanceMedium</
item
>
</
style
>
<
style
name
=
"Button"
>
<
item
name
=
"android:background"
>@android:drawable/edit_text</
item
>
<
item
name
=
"android:textAppearance"
>?android:attr/textAppearanceMedium</
item
>
</
style
>
</
resources
>
|
5. [代码]main.xml
?
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
LinearLayout
xmlns:android
=
"http://schemas.android.com/apk/res/android"
android:orientation
=
"vertical"
android:layout_width
=
"fill_parent"
android:layout_height
=
"fill_parent"
>
<
TextView
android:layout_width
=
"fill_parent"
android:layout_height
=
"wrap_content"
android:text
=
"@string/hello"
style
=
"@style/TextView"
/>
<
EditText
android:id
=
"@+id/EditText01"
android:layout_height
=
"wrap_content"
style
=
"@style/EditText"
android:layout_width
=
"fill_parent"
android:text
=
"类似Button的EditText"
></
EditText
>
<
EditText
android:id
=
"@+id/EditText02"
android:layout_height
=
"wrap_content"
android:layout_width
=
"fill_parent"
android:text
=
"普通的EditText"
></
EditText
>
<
Button
android:id
=
"@+id/Button01"
android:layout_height
=
"wrap_content"
style
=
"@style/Button"
android:layout_width
=
"fill_parent"
android:text
=
"类似EditText的Button"
></
Button
>
</
LinearLayout
>
|
from:http://www.oschina.net/code/snippet_166763_6509






