首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android实战:APP换肤功能,并自动适配手机深色模式

image.png Android换肤功能已不是什么新鲜事了,市面上有很多第三方的换肤库和实现方案。...之所以选择腾讯的QMUI库来演示APP的换肤功能,主要原因: 1、换肤功能的实现过程较简单、容易理解; 2、能轻松适配Android 10 提供的Dark Mode(深色模式) ; 3、还能白嫖QMUI...1.3 自定义换肤管理类 APP的不同皮肤、颜色已定义好,我们需要定义一个类,与QMUI对接,用于管理这些皮肤,代码功能包含:皮肤的加载、切换等操作。...attr/colorBg2" android:text="change skin" /> 注意:要想实现换肤,我们设置控件颜色时,要使用QMUI提供的换肤属性...在 Activity中,我们需要对QMUISkinManager进行注册,该Activity才能享用换肤功能(注意:在实际开发中,如果APP所有的页面都要支持换肤,那么我们尽量将QMUISkinManager

1.1K00

Android主题换肤 无缝切换

Android的主题换肤 ,可插件化提供皮肤包,无需Activity的重启直接实现无缝切换,可高仿网易云音乐的主题换肤。...关于Android的主题换肤都是个老生常谈的问题了。...关于Android换肤方案技术的总结,这篇文章还是挺有参考价值的Android换肤技术总结。感兴趣的同学可以去了解下,就当做是一个知识的普及。...今天我要实现的一个换肤方案是基于github上的这个开源框架Android-Skin-Loader。...很简单,只需调用SkinManager的load方法就可以了,把皮肤路径传进去就可以了,我的这个Demo为了简单起见,没有做在线换肤功能,只是在本地提供了可以更换的皮肤,看到这里我相信你对怎样在线换肤已经有想法了

2.8K50

Android换肤原理和Android-Skin-Loader框架解析

前言 Android换肤技术已经是很久之前就已经被成熟使用的技术了,然而我最近才在学习和接触热修复的时候才看到。...在看了一些换肤的方法之后,并且对市面上比较认可的Android-Skin-Loader换肤框架的源码进行了分析总结。再次记录一下祭奠自己逝去的时间。...Android的应用程序可以使用这种方式进行换肤。GitHub上面有一个start非常高的换肤框架Android-Skin-Loader 就是通过加载资源包对app进行换肤。...Android换肤知识点 换肤相应的API 我们先来看一下Android提供的一些基本的api,通过使用这些api可以在App内部进行资源对象的替换。...= null) callback.onFailed(); } }; }.execute(skinPackagePath); } 定义基类 换肤页面的基类的通用代码实现基本换肤功能

5K20

Android实现apk插件方式换肤的实例讲解

1.什么时候换肤? xml加载前换肤,如果xml加载后换肤,用户将会看见换肤之前的色彩,用户体验不好。 2.皮肤是什么? 皮肤就是apk,是一个资源包,包含了颜色、图片等。...3.什么样的控件应该进行换肤? 包含背景图片的控件,例如textView文字颜色。 4.皮肤与已安装的资源如何匹配? 资源名字匹配 步骤: 1.xml加载前换肤,意味着需要将所需要换肤的控件收集起来。...skinFactory = new SkinFactory(); LayoutInflaterCompat.setFactory(getLayoutInflater(),skinFactory); } } 2.需要换肤的控件收集到一个容器中并且不更改自己的逻辑直接换肤...(xml加载过程中换肤) ?...PackageManager.GET_ACTIVITIES).packageName;获得皮肤包名 (2)获取颜色(getColor):判断skinResource是否为空;拿到res的名字,eg:通过“colorAccent”去寻找id Android

48820

小程序换肤

导语 换肤,对于前端来说不算常见,却也肯定不陌生。但是大家有考虑过小程序端的换肤吗?今天我们就来聊一聊小程序的换肤。 ?...就像女人的衣柜里永远少一件衣服一样,一个应用可能也少一套皮肤,这里就涉及到换肤了。说起换肤,对于前端来说不算常见,却也肯定不陌生。...所谓的换肤,无非就是颜色值的更换,在一般的前端项目中,实现的方法有很多种。但是大家有考虑过小程序端的换肤吗?!!...换肤需求 一般来说换肤需求分两种: 一种是静态换肤,提供几种可选择的颜色/主题样式,进行选择切换,一般可供选择的主题样式不会太多; 另一种是动态换肤,可自定义色值,可通过取色板取色或者后端接口下发,可选择的范围比较大...; 传统前端换肤方案 在聊小程序的换肤方案之前,我们大概看一下一般前端项目常见的换肤方案以及优缺点: 1、class 命名空间 这个应该是最简单的换肤方案,利用class 名称准备两个主题

1.9K20

在线动态换肤思路

很早之前就在想在线换肤的实现思路,主要是之前有个项目有换肤,连布局图片都不一样,无能为力,只好写不同页面,然后通过打包的时候配置删除和替代文件实现,但是在线换肤还是没去做。...今天分享一下换肤的思路,只是单纯的颜色替换,没有包括连布局图片都不一样的换肤。 跟国际化一样,方案可能不难,难的是开发业务的时候很繁琐,写的不好就很难维护。...本来觉得这个自定义变量是真没什么意义,发现 这样一用,反而觉得换肤功能会简单很多。 另外一种antd利用 Less 的变量以及在浏览器编译没有去实验一下,本地连antd的官网都打不开。...自己知道的在线换肤的思路只有这三种了,如果真的有需求要做在线换肤功能,还真不知道哪种会比较好,只能是自己选型了,真正涉及项目的时候,可不只是这样说说而已,会碰见什么坑就不好说了。...讲道理,现在应该没多少在线换肤功能网站了吧。 自己感觉还是有点不对劲,希望有做过换肤项目的(不只是demo)可以指点一波。 (完) Coding 个人笔记

1K20

详解在 vaw-layouts 中通过 sass 实现动态换肤功能 (一)

在以往的前端开发中,css 一直不能称之为一种编程语言,虽然在 css3中增加了几个变量和函数,但是实现的功能还是比较有限。...如果您对他们还不了解,可以查看一下他们的官网学习一下,vaw-layouts项目中使用的的预处理器是sass,因此本文也是基于sass进行讲解实现动态换肤功能。...background: $mainContentBgColor; color: $mainTextColor; } ... } 详解在 vaw-layouts 中通过 sass 实现动态换肤功能...如果您对他们还不了解,可以查看一下他们的官网学习一下,vaw-layouts项目中使用的的预处理器是sass,因此本文也是基于sass进行讲解实现动态换肤功能。... 这样就可以完了动态换肤,你以为这就完了?

1.1K10

使用lessu002Fcss 动态的切换主题色实现换肤功能

这是我参与「掘金日新计划 · 8 月更文挑战」的第11天,点击查看活动详情 >> 前言 说起换肤功能,前端肯定不陌生,其实就是颜色值的更换,实现方式有很多,也各有优缺点 看需求是什么 一般来说换肤的需求分为两种...: 一种是几种可供选择的颜色/主题样式,进行选择切换,这种可供选择的主题切换不会很多 另一种是需要自定义色值,或者通过取色板取色,可供选择的范围就很大了 如何实现# 对于可供选择的颜色/主题样式换肤的实现...实现 demo 对于制定动态色值换肤的实现# 如果是要实现动态换肤,自定义色值,那上面的几种方式就不适合了。...先看下已有的实现有哪些方法 Element-UI 有换肤功能 示例预览 实现原理: 官方解释 先把默认主题文件中涉及到颜色的 CSS 值替换成关键词:链接 根据用户选择的主题色生成一系列对应的颜色值:链接...把关键词再换回刚刚生成的相应的颜色值:链接 直接在页面上加 style 标签,把生成的样式填进去:链接 看这个实现,还是比较麻烦的,想看看还有没有更优雅的方法来实现 Ant Design 的更换主题色功能是用

1.1K60
领券