最近项目添加了一项调整应用字体大小功能,做完后空闲之余总结一下。本功能仿照微信应用“设置” - “通用” - “字体大小”功能,又有一点区别。据我所知,常见改变全局字体大小方法有两种,我把这两种分为可控和不可控,为什么这么分呢,当然不是为了方便记忆。那么简单说下两者方式的实现过程:
1、不可控:通过重写Actiivity的getResources()方法更新应用的字体倍数来调整全局字体大小
2、可控:通过setTheme()方法,一开始就初始化设置不同风格的字体样式来更改全局字体大小。
而本文正式采用了第一种方案,主要是中途添加该功能,时间也不充裕,抽取字体大小又太过耗时。
微信字体大小个人猜测使用第二种方案,后者是更好的实现方式也不一定。
xml使用方式:
2、滑动按钮改变当前页面预览字体大小
3、返回时,保存放大倍数并重启应用
4、初始化应用时配置字体放大倍数。
源码地址:
https://github.com/DayorNight/BLCS
到这里就结束啦。
SelectLocation: 仿微信位置选择页面 (gitee.com)
仿微信位置选择页面
仿照微信做的位置选择
使用的是高德地图,使用的时候记得换成自己的包名和key
显示NC的时候调用NotificationManager.notify(int id, Notificationnotification),这个里面会传一个id值,所以当你打开界面的时候,调用NotificationManager.cancel(int id),只有传入你想取消的NC的id就可以啦。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)