Android 颜色处理

需求 在最近的项目开发中遇到了这种UI,顶部有一组彩色圆形按钮。选中以后颜色会加深。这样的按钮一共有十二个。 而设计师切的图就是把所有的按钮全部切下来了。 最简单的实现方式就是使用selector来实现,按下状态和选中状态不同图片的显示。但是这样就会涉及到一个问题。这样的图片有24张...

2018-02-26 15:22:01

阅读数 607

评论数 0

一行代码让RecyclerView变身ViewPager

序言 现在写博客不容易,不取一个骚气一点的标题都没人看。我曾经写过一个使用RecycleView打造水平分页GridView。当时用到的是对数据的重排序,但是这样处理还是有些问题,比如用户数据更新以后还需要继续重排序,包括对滑动事件的处理也不是很好。当时主要因为时间比较匆忙,写的不是很好,这一次...

2016-11-15 16:49:36

阅读数 22331

评论数 33

一步一步实现直播和弹幕

序言最近在研究直播的弹幕,东西有点多,准备记录一下免得自己忘了又要重新研究,也帮助有这方面需要的同学少走点弯路。关于直播的技术细节其实就是两个方面一个是推流一个是拉流,而弹幕的实现核心在即时聊天,使用聊天室的就能实现,只是消息的展示方式不同而已。在大多数的项目中还是使用第三方的直播平台实现推流功能...

2016-09-20 13:26:52

阅读数 14573

评论数 1

使用JavaScript实现网页去彩

序言 在一些纪念日是,会将网站网站中的页面变成灰黑色,去掉色彩。如下所示。 因为网页使用了静态化的技术,所以最好是只是用JavaScript就能实现自动选择相关模式并设置,而且尽可能统一配置。 实现 灰黑模式的实现 使用了css的filter 属性。给html整体添加滤镜。属性的具体使用可此查看...

2019-06-14 14:27:18

阅读数 56

评论数 0

Android 实现黑白模式

序言 在一些国家重大灾难纪恋日,网站会使用黑白模式来渲染气氛。而APP要实现黑白模式,还比较困难。目前有两种方法。 第一种 自定义layout 该方法使用自定义layout,在dispatchdraw方法的时候,添加一层黑白色的bitmap。让界面开起来成为黑白模式。但是缺点明显,应用比较卡顿。 ...

2019-05-27 15:41:47

阅读数 37

评论数 0

打印当前activity

adb shell dumpsys activity | grep “mFocusedActivity”

2019-02-28 14:25:43

阅读数 89

评论数 0

LeetCode 29 两数字相除

问题描述 思路 关键在于不能使用超过32位的数据类型,而且该算法对速度有要求。不能使用减法实现。例如 最大值2的31次方-1.除以2 。答案是2的30次方。而2的30次方等于1073741824。将近10亿次的减法才能算完。在我的计算机上需要342毫秒。 所以必须思考如何加速运算。我使用移位运...

2018-12-18 10:18:48

阅读数 52

评论数 0

二进制打印工具

该工具可以将一个数的以二进制形式打印出来。支持分隔,支持去除前端多余0。可用来调试代码,和学习计算机底层实现。 /** * Created by zhuguohui on 2018/12/14. */ public class BinaryPrintUtil { private sta...

2018-12-18 09:56:04

阅读数 45

评论数 0

通过JavaScript实现在Android WebView中点击查看图片,长按识别二维码

序言 最近的项目中,客户需要在WebView中实现长按点击识别二维码的功能。但是原有的图片点击已经和查看图片事件绑定。要不破坏原有的功能,还能添加长按事件。这是第一次遇到这种需求。最后我还是完成了这个功能。但是在完成的过程中也遇到一些坑。再次记录一下,先看一下我实现的效果。 1.原有的点击查看图片...

2018-10-17 16:43:49

阅读数 780

评论数 0

Glide 3.7.0 加载https 图片的解决办法

需要的依赖如下 compile 'com.squareup.okhttp3:okhttp:3.3.1' compile 'com.github.bumptech.glide:glide:3.7.0' 需要以下三个类 OkHttpStreamFetcher pack...

2018-07-12 10:38:34

阅读数 1377

评论数 2

ValueAnimator 和 ObjectAnimator 不能混用

在某个项目中,我需要一个动画。代码如下 ObjectAnimator animator = new ObjectAnimator(); float begin = layoutShare.getTranslationY(); animato...

2018-06-27 11:35:57

阅读数 399

评论数 0

使用Glide V4 实现GIF点赞动画

序言 最近的项目中,客户提出一个点赞动画。给了一个gif图。如下 最终的效果是这样的。 这其中也有一些知识点分享给大家: 怎么动态的添加一个动画到指定的View 怎么实现GIF只播放一次 这么监听GIF播放完毕的时间(因为需要在结束时播放消失动画) 实现 我的思路是通过需要...

2018-06-14 14:01:58

阅读数 593

评论数 0

fiddler修改返回数据

用fiddler修改数据,可以在不改变源代码的情况下调试APP 。测试了多种修改方式,这一种比较方便。特此记录

2018-05-22 15:54:37

阅读数 926

评论数 0

通过占位符获取json对象中对应位置的值的工具类

序言 最近在写一个天气文字控件,其中想实现通过占位符获取json对应位置数据的功能。这样用户就可以通过占位符自定义要显示的内容。 比如有如下的数据。 1。我想显示城市名称,和今天的天气。可以使用如下占位符。 “当前城市{currentCity},今天天气:{weather_data[...

2018-03-21 15:10:15

阅读数 697

评论数 0

Android studio 正确运行java-library的gralde配置

apply plugin: ‘java-library’ //解决第三方jar包没有自动添加到classPath的bug apply plugin: ‘idea’ dependencies { implementation fileTree(include: [‘*.jar’],...

2018-03-21 13:51:55

阅读数 2106

评论数 3

ShareSDK QQ分享回调不一致

问题 在项目中,有分享打点功能。即分享成功,会获得积分。但是同事反映QQ在取消分享以后,也显示分享成功。后来我打印了日志,发现QQ在分享成功和取消分享以后都走的是onComplete方法。但是微博取消分享却能走onCancle()方法。 oks.setCallback(new Plat...

2018-02-06 11:06:11

阅读数 1432

评论数 0

OKhttp 302 死循环

今天同事发给我这张图 这是因为okhttp中重定向次数超过21次以后就会报错。 访问一个接口的时候为什么会重定向,我用finder抓包发现一切正常,是不是因为cookie,于是我把浏览器cookie一关。然后浏览器也不行了。 心想那简单,给okhttp加上cookie就行了。但是新的问题就出...

2017-11-29 16:13:50

阅读数 1696

评论数 0

okhttp post 重定向参数丢失 跨协议重定向

序言最近的项目中,一个已经开发多时的接口突然就不能用了。抓包发现,原来是由于重定向引起的bug。发现了两个。问题1.如果遇到301,302等重定向,则会忽略原来的请求方式,统一使用GET方式。如果原来使用的是POST方式,则会丢失参数。如下图 问题2.okhttp源码中不支持跨协议重定向。如下图...

2017-11-09 13:14:28

阅读数 2134

评论数 0

神之bug 嵌套RecyclerView谜之滚动

序言有些bug,来无影,去无踪。你不知道它怎么产生的。比如下面这个,描述一下症状,每次Fragment切换的时候,页面都会自己滚动一点好像要把自己对齐。布局如下 XML实现如下:<?xml version="1.0" encoding="utf-8"...

2017-10-13 16:44:16

阅读数 388

评论数 0

自制圆形文字ICON

序言在最近的项目中,有一个地方有很多Item,但是没有相应的图标,于是和设计商量用彩色圆形和第一个文字作为图标。于是就写了这个东西。效果实现通过继承Drawable 使用的时候也很简单如下 ImageView.setImageDrawable(new ColorCircleDrawable(&qu...

2017-10-12 17:44:27

阅读数 537

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭