最近在开发过程中使用了theme移植Preference并使用了一些android样式,但是在自定义的Theme修改了相关参数后却无法实现

可能有些朋友还不知道怎么用。这里也做个简要的使用方式说明。

1. xml中使用样式。

android:textAppearance="?android:attr/textAppearanceLarge"
?android:使用安卓内置样式。
        <TextView android:id="@id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true" android:text="Hellopss"
android:ellipsize="marquee"
android:textAppearance="?android:attr/textAppearanceLarge"
android:fadingEdge="horizontal" />

2.View中使用到xml

  setContentView(xml)

3. 定义Theme

    <style name="AppTheme" parent="@style/AppThemsse">

        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
<!-- Text styles -->
<item name="android:textAppearance">@style/TextAppearance</item>
<item name="android:textAppearanceInverse">@style/TextAppearance.Inverse</item>
<item name="android:textAppearanceLarge">@style/TextAppearance.Large</item>
<item name="android:textAppearanceMedium">@style/TextAppearance.Medium</item>
<item name="android:textAppearanceSmall">@style/TextAppearance.Small</item>
<item name="android:textAppearanceLargeInverse">@style/TextAppearance.Large.Inverse</item>
<item name="android:textAppearanceMediumInverse">@style/TextAppearance.Medium.Inverse</item>
<item name="android:textAppearanceSmallInverse">@style/TextAppearance.Small.Inverse</item>
<item name="android:textAppearanceButton">@style/TextAppearance.Widget.Button</item>
<item name="android:textColorPrimary">#000079</item>
<item name="android:textColorSecondary">#000079</item>
<item name="android:textColorTertiary">@color/tertiary_text_light</item>
<item name="android:textColorPrimaryInverse">@color/primary_text_dark</item>
<item name="android:textColorSecondaryInverse">@color/secondary_text_dark</item>
<item name="android:textColorTertiaryInverse">@color/tertiary_text_dark</item>
<item name="android:textColorPrimaryDisableOnly">@color/primary_text_light_disable_only</item>
<item name="android:textColorPrimaryInverseDisableOnly">@color/primary_text_dark_disable_only</item>
<item name="android:textColorPrimaryNoDisable">@color/primary_text_light_nodisable</item>
<item name="android:textColorSecondaryNoDisable">@color/secondary_text_dark_nodisable</item>
<item name="android:textColorPrimaryInverseNoDisable">@color/primary_text_dark_nodisable</item>
<item name="android:textColorSecondaryInverseNoDisable">@color/secondary_text_dark_nodisable</item>
<item name="android:textColorHint">@color/hint_foreground_light</item>
<item name="android:textColorHintInverse">@color/hint_foreground_dark</item> </style> <style name="TextAppearance">
<item name="android:textColor">?android:textColorPrimary</item>
<item name="android:textColorHighlight">#FFFF9200</item>
<item name="android:textColorHint">?android:textColorHint</item>
<item name="android:textColorLink">#5C5CFF</item>
<item name="android:textSize">16sp</item>
<item name="android:textStyle">normal</item>
</style>

theme修改该引用的样式

4. Theme使用

AndroidManifest.xml 中设置该Theme android:theme="**"

5. 使用View

(1)直接xml导入View

(2)先new View(这样出现了所描述的问题)

        PreferenceScreen mPreferenceScreen = getPreferenceManager().createPreferenceScreen(getApplicationContext());
Preference mPreference = new Preference(this);
mPreference.setTitle("我的应用世界");
mPreference.setSummary("测试自定义Preference");
mPreference.setKey("hello");
mPreferenceScreen.addPreference(mPreference);

注意红色的地方,如果使用的是getApplicationContent()不知不觉中就出现无法使用theme了。

惠存!

使用了Theme但是没有效果问题的更多相关文章

  1. Material Designer的低版本兼容实现(二)—— Theme

    Theme material主题可以定义为如下形式: @android:style/Theme.Material @android:style/Theme.Material.Light @androi ...

  2. android学习笔记50——SQLiteOpenHelper、android实现系统自带样式

    SQLiteOpenHelper SQLiteOpenHelper是android提供的一个管理数据库的工具类,可用于管理数据库的创建和版本更新. 一般的用法是创建SQLiteOpenHelper的子 ...

  3. Android学习笔记--AlertDialog应用

    1. 自定义实现带图标的TextView IconTextView.java package com.evor.andtest; import android.content.Context; imp ...

  4. VSCode瞎折腾记

    搬到小机房后终于能用VSCode啦(没错以前的系统是xp) 但是这东西比Dev难搞多了qwq,简单记一下自己的DIY历程吧(不然全搞炸就凉了) 设置语言为中文 可以直接下载插件 让VSCode支持编译 ...

  5. Android中样式及主题

    Android应用程序中不可避免的需要使用的样式和主题,样式指定一般指定View的高度.字体.字体颜色.背景,Android里的样荐定义在Style.xml文件里.主题也是一种样式,只不过它是应用在整 ...

  6. C++Windows核心编程读书笔记

    转自:http://www.makaidong.com/%E5%8D%9A%E5%AE%A2%E5%9B%AD%E6%96%87/71405.shtml "C++Windows核心编程读书笔 ...

  7. 【转】《windows核心编程》读书笔记

    这篇笔记是我在读<Windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和Windows实际机制可能有出入 ...

  8. Activity + 基础UI

    目录 Activity + 基础UI 1. 返回键退出进入应用: 2. home键以后 3. home键退出切换字体 二:AndroidManifest配置theme改变UI效果 三:UI 报错: A ...

  9. IDEA界面太丑??尝试一下这几个风格

    >>>>>>>>>>原文地址<<<<<<<<<< >>>> ...

随机推荐

  1. 论java虚拟类和接口的区别

    如题:Abstract使数据成员虚拟化,而Interface则使方法成员虚拟化.

  2. Win8系统 Python安装 - 入门

    原文:http://www.blogbus.com/hx1987-logs/271955446.html 安装python (1)下载python安装包,下载网站https://www.python. ...

  3. Laxcus大数据管理系统2.0(11)- 第九章 容错

    第九章 容错 在当前,由于集群庞大的组织体系和复杂性,以及用户普遍要求低成本硬件,使得集群在运行过程中发生的错误概率,远远高于单一且性能稳定的小型机服务器,并且集群在运行过程中几乎是不允许停止的,这就 ...

  4. python学习笔记(MD5算法)

    博主最近进度停滞了 对web开发理解欠缺好多内容 今天整理下MD5算法,这个涉及到mysql数据库存储用户表密码字段的时候 一般是带有加密的 # -*- coding: utf-8 -*- impor ...

  5. JFrame 不规则窗体

    效果截图: 这几天静心学java,由于学的不是很好,也没有什么有什么可以作品,但是毕竟也算刚开始认真学,也遇到了好多问题: 首先 1. JFrame的无边框设置:JFrame.setUndecorat ...

  6. win7下Oracle 11的安装

    把下载的win32_11gR2_database_1of2.zip和win32_11gR2_database_2of2.zip解压到一个database文件夹下,运行安装文件   Oracle11的卸 ...

  7. 【测试】自行建表并演示append+nologging,并描述数据写入后产生的效果

    ①创建表: SQL> create table t4 as select * from all_objects; Table created. ②设置t4处于nologging: SQL> ...

  8. centos 7 安装mariadb

    卸载mysql # rpm -qa|grep mysql mysql-community-common-5.6.30-2.el7.x86_64 mysql-community-libs-5.6.30- ...

  9. 学习总结 java连接数据库

    package com.hanqi.test; import java.sql.*; public class jdbcTest { public static void main(String[] ...

  10. rman--增量备份

    1.rman增量备份级别 级别0和全库备份相同,级别1备份执行的是差异备份. 2.增量备份 使用rman实现增量备份的级别0备份 RMAN database; 使用rman实现增量备份的级别1备份 d ...