重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

android仿微信,android仿微信图片选择器 慕课课程百度云

Android仿微信全局字体大小调整

最近项目添加了一项调整应用字体大小功能,做完后空闲之余总结一下。本功能仿照微信应用“设置” - “通用” - “字体大小”功能,又有一点区别。据我所知,常见改变全局字体大小方法有两种,我把这两种分为可控和不可控,为什么这么分呢,当然不是为了方便记忆。那么简单说下两者方式的实现过程:

创新互联是一家专业提供松江企业网站建设,专注与成都网站设计、成都网站制作、H5技术、小程序制作等业务。10年已为松江众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

1、不可控:通过重写Actiivity的getResources()方法更新应用的字体倍数来调整全局字体大小

2、可控:通过setTheme()方法,一开始就初始化设置不同风格的字体样式来更改全局字体大小。

而本文正式采用了第一种方案,主要是中途添加该功能,时间也不充裕,抽取字体大小又太过耗时。

微信字体大小个人猜测使用第二种方案,后者是更好的实现方式也不一定。

xml使用方式:

2、滑动按钮改变当前页面预览字体大小

3、返回时,保存放大倍数并重启应用

4、初始化应用时配置字体放大倍数。

源码地址:

到这里就结束啦。

Android仿微信朋友圈添加图片

老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧,先把工作完成了,再看也来得及,是吧!

1、首先这是用GridView实现的

Adapter

Android 仿微信长按列表弹出PopupMenu菜单栏

弹出效果如下图所示

可以使用setGravity()方法来指定弹出窗口与anchor视图的对齐方式,例如修改对齐方式为Gravity.END

使用起来还是比较简单的,但是好像大部分项目的需求是PopupMenu在用户点击的位置弹出,然而PopupMenu并没有提供在指定坐标弹出的方法,所以只能咱们自己来实现咯!

想让PopupMenu在指定弹出位置,首先咱们得先了解show()方法是如何让PopupMenu弹出来的,所以只能去阅读源码了(Read The Fucking Source Code~)。

PopupMenu的show()方法很简单,直接把任务转给MenuPopupHelper来处理,处理流程:show() - tryShow() - showPopup(0, 0, false, false);

我们可以看到showPopup方法内有两个参数int xOffset、int yOffset,根据注释可以知道这就是相对于anchor视图的坐标值。所以如果要指定PopupMenu的弹出位置,MenuPopupHelper应该这样处理弹出逻辑:show(int x, int y) - tryShow(int x, int y) - showPopup(x, y, true, true)。

但是由于PopupMenu无法调用到MenuPopupHelper的show(int x, int y) 方法,因此我们只能使用反射机制绕过PopupMenu,直接调用MenuPopupHelper的show(int x, int y)方法。

到此为止,已经有了大致的解决思路,接下来看看具体实现。

最终弹出效果如下图所示

Android仿wx位置选择

SelectLocation: 仿微信位置选择页面 (gitee.com)

仿微信位置选择页面

仿照微信做的位置选择

使用的是高德地图,使用的时候记得换成自己的包名和key


网站栏目:android仿微信,android仿微信图片选择器 慕课课程百度云
标题来源:http://cqcxhl.com/article/dsdhpoh.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP