6 化作孤岛的瓜

企业博客 长沙橙迹网络科技有限公司 - CTO/CIO/技术总监

我要认证

为了某种意义在编程。转圈圈

等级
TA的排名 1w+

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

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

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

2020-09-10 00:36:10

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

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

2020-04-23 11:04:19

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

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

2019-12-22 18:00:49

Android——微信自动回复实现

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

2019-09-20 18:16:29

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

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

2019-07-02 22:53:07

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

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

2019-05-29 23:14:01

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

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

2019-05-19 23:52:12

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

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

2019-05-12 14:55:50

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

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

2019-03-26 17:01:25

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

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

2017-11-25 11:58:53

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

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

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

2017-07-13 23:18:19

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

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

2017-05-06 11:01:29

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

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

2017-05-03 22:09:17

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

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

2017-03-27 20:14:02

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

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

2017-02-22 20:34:30

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

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

2017-02-19 11:00:43

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

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

2017-02-12 23:36:30

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

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

2017-02-11 19:24:35

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享达人
    分享达人
    成功上传6个资源即可获取