使用样式
1.通过HTML标记,可以在字符串资源中直接使用HTML标记来达到修改样式,如
<string name="text"><i>Hello</i> <b>World</b></string>
2.通过代码方式(Spannable对象)修改样式.
获得TextView的Spannable对象的方法是先setText("something", TextView.BufferType.SPANNABLE), 然后使用getText()即可返回Spannable对象.
EditText et = (EditText)findViewById(R.id.et);
et.setText("hello world");
Spannable spn = (Spannable) et.getText();
spn.setSpan(new BackgroundColorSpan(Color.RED), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
spn.setSpan(new StyleSpan(android.graphics.Typeface.BLOD_ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
3.通过XML来创建公用的样式文件
在/res/values/下创建一个XML文件如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="errorText">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#ff0000</item>
<item name="android:typeface">monospace</item>
</style>
</resources>
需要使用的时候就直接使用errorText这个资源id就行了
样式树,当我想基于上面的errorText样式来创建一个子样式时可以如下:ger继承了errorText的样式,并新增了textStyle属性.
不过,上述方式不适用与继承Android提供的样式,如果要继承Android提供的样式,需要使用parent属性,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CustomTextAppearence" parent="@android:style/TextAppearance">
<item ......./>
</style>
</resources>
Theme
Theme实际上就是Style的广泛应用.
如果要制定Theme需要在AndroidManifest.xml中设置,如下:
<activity android:theme="@style/MyTheme"/>
<application android:theme="@style/MyTheme"/>
<application android:theme="@android:style/Theme.NoTitleBar"/>
分享到:
相关推荐
android:theme=”@android:style/Theme.Dialog” : Activity显示为对话框模式 android:theme=”@android:style/Theme.NoTitleBar” : 不显示应用程序标题栏 android:theme=”@android:style/Theme.NoTitleBar....
主题Theme就是用来设置界面UI风格,可以设置整个应用或者某个活动Activity的界面风格。...style/Theme.NoTitleBar” 不显示应用程序标题栏 android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”
主要介绍了Android Style.xml的应用详解及代码实现的相关资料,需要的朋友可以参考下
android-styletheme-sample Android 中样式和主题的示例应用程序
style name=Splash_Theme parent=@android:style/Theme.NoTitleBar> </style> 原因是我们给改Activity/Application设置的主题引起的,因为该主题相对应的windowBackground等背景被设置成了白色或者黑色,且...
在AS中res/values/style.xml中定义,例如新建项目AS自动创建的Theme,是系统提供; @color/colorPrimary @color/colorPrimaryDark @color/colorAccent Android系统提供的主题在:..\platforms\android-29\
Android-Mulit-Theme可以让轻松地对Android应用添加多主题支持,并且支持在不销毁重建Activity的情况下动态切换主题。利用Android自身支持的不同Style中可复写相同的attribute的值的特性,通过代码动态设置不同的...
<com.google.android.material.appbar.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> <androidx.appcompat.widget....
3.21 Android变脸——主题(Theme)实现 第4章 史上超豪华的手机控件 第5章 交互式通信服务与手机控制 第6章 手机自动服务纪实 第7章 娱乐多媒体 第8章 当Android与Internet接轨 第9章 Google...
前几天Boss就反应说,机器每次启动程序都会闪一下黑屏,这个客户不接受。没办法,只能想想怎么解决,最后找到了下面的方法。...style name=”Theme.AppStartLoad” parent=”android:Theme”>
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
安装 Android SDK 和Eclipse 插件 Android应用 android样式和主题(style&theme) Activity生命周期
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
真正的支持无缝换肤/夜间模式的Android框架,配合theme和换肤控件框架可以做到无缝切换换肤(无需重启应用和当前页面)。 该应用框架可以实现无缝换肤/切换夜间模式的需求,需要在换肤/切换夜间模式的界面只需要...
第1章 Android应用与开发环境 1 1.1 Android的发展和历史 2 1.1.1 Android的发展和简介 2 1.1.2 Android平台架构及特性 3 1.2 搭建Android开发环境 5 1.2.1 下载和安装Android SDK 5 1.2.2 安装...
android:theme="@style/AppTheme"> <!--这里添加正确的key和value --> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="7OkUCRXhEG379MBvwHNG4qmbY1QTnI19" /> .................
但同时对话框中的内容有更多控制和能控制其生命周期,这时你可以使用带有Dialog样式的Activity来应用你的项目中,想使Activity有对话框那样效果可以在Androidmanifest中添加 Android:style/Theme.Dialog 的主题特性 ...
3.21 Android变脸——主题(Theme)实现 第4章 史上超豪华的手机控件 第5章 交互式通信服务与手机控制 第6章 手机自动服务纪实 第7章 娱乐多媒体 第8章 当Android与Internet接轨 第9章 Google...