化身孤岛的瓜

工作,学习联系企鹅:3442771773

  • 博客(88)
  • 资源 (8)
  • 论坛 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 Android解决英文换行导致TextView 右侧留白区域过大问题

public class AdjustTextView extends WebullAutoResizeTextView { public AdjustTextView(Context context) { super(context); } public AdjustTextView(Context context, AttributeSet attrs) { super(context, attrs); } public Ad.

2020-11-26 17:11:48 275

原创 Android——基于LinearLayout实现的可联动伸缩布局组件

首先先预览一下实现的效果:红色区域是设置的分割线,可以支持设置分割线的粗度和颜色属性:<declare-styleable name="ZoomLayout"> <attr name="IntervalLineWidth" format="reference" /> <attr name="IntervalLineColor" format="reference" /> </declare-styleable&g

2020-09-13 12:24:21 617 1

原创 Android——基于ConstraintLayout实现的可拖拽位置控件

最近在研究使用android实现平板和电脑端一些应用的效果,话不多说先上个图可以看到,实现了中间的绿色区域换到父布局最左侧的功能。在拖动的过程中,父布局会出现上下左右四个箭头按钮,当光标移动到箭头上并放下时,拖动的视图会移动到指定的方向上去。实现思路:中间的绿色组件,经历了以下几个过程:1.长按实现视图的拖拽。2.拖拽移动过程中,父布局出现四个方向的箭头按钮,当光标在箭头上时显示黄色圆圈表示被选中。3.选中以后,将拖拽的组件移动到视图的最左侧。技术难点:1.首先是如何创造

2020-09-10 00:36:10 1765

原创 Android——inhale效果实现以及延伸(动画&绘制学习分享一)
原力计划

概述:本文主要是对drawBitmapMesh的api研究学习,以及介绍模仿mac吸入动效的实现原理。drawBitmapMesh:使bigmap产生形变,功能与drawVertices类似,区别是drawVertices直接对画布产生作用。首先需要看一下api中的参数列表:其中关键参数分别是:bitmap:需要扭曲的图像meshWidth:横向的格数me...

2020-04-23 11:04:19 343

原创 Android 酷炫的3d立体圆柱动画效果实现

最近在drrible上看到一个超酷炫的效果,立体圆柱缓慢上升:https://dribbble.com/shots/7077455-Spending-analytics然后准备实现一波,做之前在网上找了很久,并没有相似的效果,所以自己做了一个,已经上传到我的代码库里:https://github.com/jiangzhengnan/NguiLib欢迎小伙伴们的start或者requ...

2019-12-22 18:00:49 1272 2

原创 Android——微信自动回复实现

首先本文的测试微信版本是7.0.3 ,亲测可以使用。需要实现-抓取微信自动回复消息的功能点。一.首先打开DDMS,使用按钮。在微信中回复一个消息点击Stop Method Profiling。二.查看生成的报表,观察到如下两个方法其中1应该是发送消息的接口方法。2应该是UI层显示的方法。三.首先分析第一个方法:1.,可以看到,参数值是String,返...

2019-09-20 18:16:29 8615 21

原创 Andorid——SVG矢量动画深度学习(一)

概览:本文主要描述了Android系统实现矢量动画的各种方式以及基础应用,也是一个月以来对矢量动画的学习和总结.矢量图:矢量图不同于位图是用像素描述图像的,它是用数学曲线描述图形。所以一张图片就是对应着一系列的数学曲线,所以图片的显示尺寸和图片体积无关。(这里为什么说显示尺寸,因为矢量图根本就没有所谓的尺寸,就看你把它显示成多大),它的体积就是文本文件的大小。并且矢量图可以无限拉伸不失...

2019-07-02 22:53:07 446

原创 Android——ECG心电图的绘制实现(二)

在上篇Android——ECG心电图的绘制实现博客中,实现了心电图的数据展示绘制。在之后又新增了 心电图的自动滑动展示 与 实时绘制功能。效果如下:自动滑动展示实时绘制(这里用到了一个timer不断添加数据)一、自动滑动展示 实现实现思路:通过开启定时器实现下标scrollIndex不断增加,以此来计算展示数据的开始下标scrollStartIndex与结束下标s...

2019-05-29 23:14:01 5703 8

原创 Android——ECG心电图的绘制实现

最近在项目中需要使用到的心电Ecg显示效果,本来打算使用sdk方的视图组件的,但是奈何他们的组件问题太多了。比如网格不对齐(强迫症表示这个无法忍),组件不支持静态显示数据等等问题。所以打算自己写一个用来做主页面的心电数据展示。首先要实现以下几个功能点:1.网格的大小,颜色可控。2.心电线条的颜色粗细可控。3.无论传入的数据源长度是多少,都要均匀的显示在表格上(按一定的比例尺缩放...

2019-05-19 23:52:12 2571 4

原创 Android——贝塞尔曲线的水波浪效果实现

使用贝塞尔曲线实现的水波浪效果,在很多杀毒软件的进度条显示中都有应用:这个效果呢以前在有一个项目中需要实现过,当时是使用的正弦曲线做的效果,不过后来发现贝塞尔曲线也可以做出相同的效果,并且代码更为优雅。那么对于初学者来说呢,首先需要了解什么是贝塞尔曲线,网上有很多教程,这里我找到了比较容易看懂的博客:贝塞尔曲线原理(实现图真漂亮)我们常用的是二阶贝塞尔曲线,其推导公式为:...

2019-05-12 14:55:50 1129

原创 Andorid实现皮皮蟹App的核心功能-语音播放

今天在跑一家面试的时候被问到能不能实现皮皮蟹的录音播放功能:概括起来就是在皮皮蟹里面选择需要播放的音频,保存到本地,然后跳转到微信点击录音的时候播放该音频,乍看一下感觉这个问题其实挺简单的,但是后面尝试了一下其实并不简单。思路1:通过判断麦克风是否被占用来获取在微信中录音的行为"回调",百度出来的方法大同小异,都是: private boolean validateMi...

2019-03-26 17:01:25 1542 1

原创 Android——腾讯QQ的Tab按钮动画效果完美实现

最近在用QQ的时候发现了一个有意思的小细节,如图所示:可以看到Tab按钮都有一个随着用户拖动而转动的特效,一开始被这个效果惊艳到了,QQ还是很细致的,注重细节和用户体验。于是利用空闲时间实现了这个效果,所有代码均用kotlin实现,项目效果如图所示:哈哈是不是一模一样呢,完整的实现代码并不长,只有200多行,但是找思路花了一些时间,也遇到过许多弯路,不过最后都还是坚持下

2017-11-25 11:58:53 6508 5

原创 Kotlin 入门基础语法学习笔记

敲了一天的kotlin基础语法,整理归纳到一个类里面,便于以后忘记的时候复习。/** * Created by GG on 2017/11/20. *///main函数fun main(args: Array) { var testMain = TestMain() print(testMain.array())}class TestMain { //单例

2017-11-21 21:41:16 565

原创 Android——AIDL基础实现demo以及原理探究

最近有一段时间没写博客了,打算最近趁着有时间补补,本文是总结的AIDL的基本使用和原理。分为两个部分:一是简单的上手demo,二是对代码逻辑进行分析。一:简单的AIDL小Demo:服务端:1.新建服务端工程AIDLserver,新建AIDL文件:2.打开该文件,编写一个测试方法:3.点击build-rebuild进行编译,可以看到生成的java类文件

2017-07-13 23:18:19 504

原创 仿知乎FloatingActionButton浮动按钮动画效果实现(三)

本文主要是为了实现仿知乎FloatingActionButton浮动按钮动画效果实现(一)中提到的第四步骤:设置点击出现的子按钮与描绘子按钮出现的动画效果。这里建议使用Github上的一个MD风格的开源组件:https://github.com/Clans/FloatingActionButton源码大概1K行,实现效果如下:实现步骤如下:1.在gradle中引入依

2017-05-06 11:01:29 9891 2

原创 Android——自由拖动并显示文字的悬浮框实现

项目中需要实现一个状态显示的悬浮框,要求可以设置两种模式:拖动模式和不可拖动模式。实现效果图如下:实现步骤:1.首先要设置该悬浮框的基本属性:/** * 显示弹出框 * * @param context */ @SuppressWarnings("WrongConstant") public static void s

2017-05-03 22:09:17 5658

原创 Android——一分钟学会使用实时模板Live Template

最近用到的一个比较实用的AS功能Live Template。用法如下:比如我写了一个方法:private boolean balabala(){ return false;}然后我需要给它加一点注释,比如作者,创建日期之类的,我可以打一个note:然后按一下回车,啪:/** * @author Pumpkin * @date 17/3/

2017-03-27 20:14:02 1246

原创 Android——实现渐变色水波纹效果源码

项目中使用到的效果,效果图如下:代码实现:public class WaveView extends View { private Paint mPaint, mCriclePaint, mTextPaint; // 倾斜或旋转、快速变化,当在屏幕上画一条直线时, 横竖不会出现锯齿, // 但是当斜着画时, 就会出现锯齿的效果,所以需要设置抗锯齿 p

2017-02-22 20:34:30 2612 2

原创 AccessibilityService——实现自动遍历点赞功能

概述:利用AccessibilityService机制实现了一个比较好玩儿的功能,微信朋友圈自动遍历点赞。即通过不断的滚动+点赞实现把每一条朋友圈都赞一次。当然其中还要涉及一些判断算法,比如如果这条朋友圈已经赞过就跳过去,以及当前界面没有可赞的朋友圈时执行翻页。其实做起来试错是个很繁冗的过程,这个效果也差不多做了两天。使用方式:运行程序-开启无障碍服务,再切换到微信主界面,

2017-02-19 11:00:43 23664 25

原创 AccessibilityService——实现微信切换账号功能

对AccessibilityService的学习已经有一个多月了,发现其使用方法其实也都蛮简单的,只是在不同项目中试错比较复杂。使用AccessibilityService实现了微信自动切换账号的功能,图示如下(这个步骤都是全自动的喔):使用方式是运行程序-开启无障碍服务,再切换到微信主界面,点击【我】的tab按钮,就会自动执行退出账号再登陆的逻辑了。Accessibi

2017-02-12 23:36:30 5321 13

原创 Android——个性化Progress电池显示视图

项目中需要用到的效果,图示如下:既一个显示电量槽的ProgressBar。一开始没想到可以通过ProgressBar直接实现,想的是通过一个电池图的遮盖,然后再用canvas画内部的红色长方形实现的。后面知道了居然可以直接用ProgressBar写。。。下面讲一下具体怎么实现的,这个也可以收藏起来以后参考用。实现步骤:1.首先实现ProgressBar的布局,这

2017-02-11 19:24:35 3321 2

原创 Android——实现光点模糊渐变的自旋转圆环特效

项目中需要实现的效果图如下:可以这个表盘看到中间部分都是没有什么难点的,主要是周围圆环的三种效果:1:渐变色2:尖端的白点模糊效果3:路径绘制最终实现的效果图如下:完美实现了三点要求。实现思路:1.首先是黑色底色圆环的绘制(黑色圈是固定不变的)。2.在绘制好黑色底色圆环之后再绘制渐变色圆弧(蓝绿部分)。3.最后绘制小星星部分,使用

2017-02-05 19:02:32 4345 4

原创 Android——实现RecyclerView左侧滑删除与右侧滑选择

项目中要实现的功能,之前找了很久发现网上大部分的侧滑删除和列表全选都是ListView的实现,而对RecyclerView的实现却是少之又少,所以花了很多时间实现了一个还比较满意的版本,效果如下:侧滑删除(带自动校位滑动效果):右滑出现选择框:一键编辑(全选):实现原理:1.首先需要实现一个基本的RecyclerView。2. 自定义It

2017-01-13 15:35:17 13689 5

原创 Android——实现酷炫的RecyclerView心形交错下拉刷新动画

最近好久没发博客了啊...虽然工作比较忙,但还是懈怠了。本文介绍实现的一个带动效的RecyclerView下拉刷新动画,效果如下图: 实现原理:基于Aspsine的上拉加载下拉刷新的RecycerView库实现的效果,

2017-01-08 16:31:53 3918 2

原创 相册图片存储地址

暂时作为相册图片存储地址使用.

2017-01-04 11:06:30 498

原创 LeetCode每日一题——136. Single Number

原题地址: https://leetcode.com/problems/single-number/Fizz Buzz描述:Given an array of integers, every element appears twice except for one. Find that single one.

2016-12-13 15:05:41 815

原创 LeetCode每日一题——231. Power of Two

原题地址: https://leetcode.com/problems/power-of-two/Fizz Buzz描述:Given an integer, write a function to determine if it is a power of two.举例:无解题思路:判断

2016-12-12 15:46:08 404

原创 LeetCode每日一题——412. Fizz Buzz

原题地址:https://leetcode.com/problems/fizz-buzz/Fizz Buzz描述:Write a program that outputs the string representation of numbers from 1 to n.But for multiples of three it should output “

2016-12-07 23:32:54 752

原创 Android——高德地图实现多点连线与点击定位监听实现

最近开发的项目中需要使用到的功能,如下图所示:服务器会传来一个包含项数据类型为坐标与时间的数组。需要实现的功能有:1.按时间顺序对每个点进行连线。2.点击单个点会在点的上分dialog内显示时间(如下图)。3.初始化定位至第一个点处。代码实现:1.按时间顺序对每个点进行连线。思路:先服务器回传的ArrayList进行按时间排序: /

2016-12-07 22:37:41 6527

原创 Android 经验交流分享报告笔记

第一部分:项目整体架构用到的第三方库:一:compile files('libs/butterknife-7.0.1.jar')1.简介: Field and method binding for Android views。 JakeWharton开发的JakeWharton,github上1W+start。2.与以往项目的区别以及优缺点:注解...

2016-11-22 22:37:12 700

原创 Android 使用ExpandableListView打造可展开列表组件

在项目中要用到,需要实现的效果如下:1、可遍历1-12个月份。2、可查看每个月份下对应的照片。运行效果如下:实现思路:一开始打算使用ScrollView嵌套一个LinearLayout,然后add进不同子项,不过这样写代码量会比较多,而且要做子项点击事件处理,逻辑会稍微复杂一点。最后使用了ExpandableListView组件,将数据全部抽离出来,依次

2016-11-19 15:27:09 983

原创 使用华为nexus6p进行拍并照裁剪图片和从相册裁剪图片

在项目的兼容适配上碰到了一个问题,就是之前写好的上传头像功能

2016-11-05 14:09:50 2062

原创 Android——插件化学习笔记(一)

写了一个月应用层代码,感觉写呕了,最近在研究插件化动态加载方面的东西。没错就是360的开源库:DroidPluginTeam还有一位大神写的很好的源码分析总结:understand-plugin-framework本文主要对第一篇:Android插件化原理解析——Hook机制之动态代理 遇到的一些问题以及解决最后的作业部分,并记录下作为学习心得笔记。对于刚接触这个的学者,可以起到一定作

2016-10-28 17:26:48 788

原创 仿知乎FloatingActionButton浮动按钮动画效果实现(二)

上文 仿知乎FloatingActionButton浮动按钮动画效果实现(一)介绍了知乎的FloatingActionButton的点击动画效果,以及遮布的实现。本文主要实现的是随着RecycleView的上下滑动,FloatingActionButton随之消失或出现的动画效果。效果图如下:实现过程:1、引入Google的desin包:compile 'c

2016-10-02 23:40:05 8178 4

原创 Android——MVP+Retrofit2.0+RxJava框架整合

对三者的学习已经有一段时间了,现在写了一个基础版本的整合Demo,因为下个项目就要正式开始了,这段时间会不断对该Demo进行扩展补充。Demo的Github地址:https://github.com/jiangzhengnan/SimpleMvpRxJavaRetrofit首先让我们回顾一下各部分的原理:MVP模式结构Model: 业务逻辑和实体模型View:用户交互和视图

2016-09-27 22:48:52 3243 4

原创 Android 做一款直播APP?一分钟掌握乐视云直播Demo

最近工作需要做一款直播APP,恩是的,从RTMP协议的实现开始到处理服务器高并发、负载均衡、客户端播放器实现等等等.....估计全部写完我也到而立之年了吧23333......BOSS们估计也是发现了我的困惑。。所以打算集成第三方sdk开发,现在大部分的直播产品都会借助第三方的直播技术,这样也可以保证直播的质量。于是开始了对当下主流直播sdk的调研之旅,以下有几个参考链接:最近市面

2016-09-19 16:10:59 2773 4

原创 RxJava学习(二)——RxJava使用场景总结

11个RxJava的实例集合类名一一对应内容,分别是:MainActivity——RxJava基础用法simplestAty——RxJava简单实例timer——延时操作interval——周期性操作twoexample——两个RxJava初始化demoschedulePeriodically——使用RxJava做轮询请求merge——合并两个数据源ma

2016-09-11 15:41:24 4155

原创 RxJava学习(一)——RxJava入门实践与上手Demo

学习响应式Java(RxJava)已经两天辣~看了几篇繁冗的博文以及资料,打算在此做一个简单的总结,供新手参考以及快速入门,也希望大家少走一些我碰到的弯路。首先是RxJava的Github地址:https://github.com/ReactiveX/RxJava在Studio下使用时我们需要添加依赖:compile 'io.reactivex:rxjava:1.0.14'com

2016-09-08 22:43:07 1579

原创 Android 仿网易一元夺宝客户端下拉加载动画实现(一)

上上周写的一个demo,仿照网易一元夺宝的下拉刷新效果。原效果是(第一部分)一个小太阳拉下来,然后松开回弹上去,(第二部分)再掉下来一个硬币进行中轴旋转。本文实现的效果的是第一部分的,效果演示图如下:Gif图看起来比较卡顿。。。其实真机演示效果还是很流畅的。下面分析实现过程:当时因为时间有限没有写在下拉刷新的组件中,也没有封装成一个单独的组件,只是在主布局后面写了一

2016-09-06 10:21:37 2431 1

原创 MVP源码实战解析——告别MVC,初识MVP

最近在筹备新项目的开发,打算使用google官方推荐的MVP配合Retrofit+RxAndroid打造一套新项目的框架。先从MVP开始学习,然而网上关于MVP的博客以及学习资料实在是太多,所以打算删繁就简,先研究一番google官方的MVP实例。谷歌的MVP框架源码已经发布五个多月了,如今已经成为了时下最火热的Android框架,其视图与模型完全分离的特性也受到了越来越多开发者的喜爱。

2016-09-02 12:49:32 1448

Android——实现光点模糊渐变的自旋转圆环特效,实现水滴波纹特效源码

Android——实现光点模糊渐变的自旋转圆环特效,实现水滴波纹特效的源代码。 博客地址:http://blog.csdn.net/qq_22770457?viewmode=contents

2017-02-06

Android——实现RecyclerView左侧滑删除与右侧滑选择

RecyclerView的各种效果实现。 实现效果: 侧滑删除(带自动校位滑动效果); 右滑出现选择框; 一键全选。

2017-01-13

全仿To圈的各种效果代码资源汇总

To圈大部分效果实现

2017-01-08

实现酷炫的RecyclerView心形交错下拉刷新动画

往下拉时会有两个爱心从左边和上方聚合到中心,然后自动弹回时他们又回复原位。

2017-01-08

Android——实现光点模糊渐变的自旋转圆环特效,实现水滴波纹特效

Android——实现光点模糊渐变的自旋转圆环特效,实现水滴波纹特效

2017-02-05

SVG矢量动画深度学习工程

博客地址:https://pumpkin.blog.csdn.net/article/details/94485505

2019-07-02

Java面试题库汇总

共包括: Java基础面试宝典2014版 Java就业面试题大全 数据库面试题 项目面试题

2016-05-24

实现RecyclerView左侧滑删除与右侧滑选择

实现RecyclerView左侧滑删除与右侧滑选择

2017-01-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

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