android 自定义view 高级UI
六道对穿肠
android开发程序员,写过小程序,前端. 喜欢用技术解决实际问题.
展开
-
仿照爱时间app写的时钟 自定义view
MyClockViewMyClockView仿照 爱时间app 写的自定义时间控件爱时间的 控件我写的控件可以看到我写的在指针,刻度上面 是比他要精细一些的. 后面的点击事件.还有中间文字的绘制 都是一些套路,我的时间也不够多.就不写了.主要思想是绘制下面几个要点外层圆环 外层刻度 外层时间内层圆环 内层刻度 内层时间中心圆 中心文字注意点是刻度的绘制和文字的绘制. 需要使用Canvas的画布的旋转技巧 这样可以比较简单的绘制一些刻度的旋转角度.git地址github地址原创 2022-02-20 12:48:49 · 1571 阅读 · 0 评论 -
如何绘制一个圆形布局---自定义ViewGroup
需求:现在需要做一个圆形的布局. 每个可以在xml里面动态添加或减少子view.子view以圆形布局排列. 圆心需要有文字展示分析:继承一个ViewGroup,在排列的时候 通过角度计算,排列每个字view. 在圆心处利用paint 绘制所需的文字.效果忽略其他的布局 只看圆形的布局, 注意内部画了一个圆形,子布局中心刚好在这个圆形上.具体代码:package com.tongtailian.www.stir.view;import android.content.Context;im原创 2020-11-30 10:50:55 · 461 阅读 · 0 评论 -
中化油生活APP---实现类似支付宝卡包,银行卡包效果动画myCardView
MyCardView 实现类似支付宝卡包效果动画文章目录MyCardView 实现类似支付宝卡包效果动画这是应用内的效果这是demo的效果思路代码这是应用内的效果这是demo的效果思路说下思路. 首先是一个线性布局,动态添加三个view,在添加的时候margin给设置一个负值,这样可以让卡片排列的时候看起来像是叠加排列的. 然后就是点击动画效果,使用属性动画即可实现. 有一个地方需要注意, 因为卡片叠加的时候,底部有个view是挨着上面的现象布局的,这样移动的时候卡片与卡片之间没有间距,原创 2020-11-13 15:14:38 · 619 阅读 · 0 评论 -
高级UI-Path贝塞尔曲线以及练习Demo 水波纹效果
贝塞尔曲线入门Demodemo 效果二阶贝塞尔曲线demo三阶贝塞尔曲线Demo三阶贝塞尔曲线水波纹效果失败记录二阶贝塞尔曲线波浪效果一、Path基本使用1、rLineTo,rMoveTo 带r开头基于前一个点的相对位置LineTo,MovoTo 不带r开头的,传的是我们的绝对位置2、addCirclePath.Direction.CCW,点击进...原创 2018-02-10 14:37:21 · 915 阅读 · 0 评论 -
布卡漫画加载进度条
布卡漫画加载进度条其实没啥难度 主要就是用的资源目录播放帧动画 看代码 就啥都知道了http://download.csdn.net/detail/liudao7994/8963593下载地址原创 2015-08-05 16:46:46 · 1233 阅读 · 0 评论 -
高级UI-SVG_VectorDrawable 属性 备份 需要时查看
引导:微信引入的SVG技术。http://mp.weixin.qq.com/s?__biz=MzAwNDY1ODY2OQ==&mid=207863967&idx=1&sn=3d7b07d528f38e9f812e8df7df1e3322&scene=4#wechat_redirect1.概念1)SVG,即Scalable Vector Graphics ...转载 2018-02-27 15:05:43 · 224 阅读 · 0 评论 -
高级UI-PathMeasure 使用(路径绘制) 小船在波浪上运动 demo
目录 通过path画出矩形通过path画出小船跟随波浪运动使用DashPathEffect 进行路径绘制基础介绍看这两个. 讲的都很不错https://www.jianshu.com/p/9ee023755ce8https://www.jianshu.com/p/3efa5341abcc getSegment 的使用先写个基本使用的demo...原创 2018-02-24 17:20:32 · 1074 阅读 · 2 评论 -
高级UI - Android动画基本使用
一、传统的2D动画—补间动画+帧动画二、属性动画属性动画基础1.什么是属性动画?属性动画有什么特点?2.属性动画动画基本使用动画1. 直接操作属性动画2. OjbectAnimator基本使用动画3 多个动画同时执行方法1: 设置动画监听 同步操作其他属性动画4 ,方法2 使用valueAnimator 只需要监听值的变化动画5 方法3 PropertyVal...原创 2018-06-28 14:50:27 · 973 阅读 · 0 评论 -
高级UI- 属性动画炫酷动画案例+淘宝动画+源码解析+策略模式使用
属性动画源码:案例1案例2最终效果思路 :代码TODU案例3 加载的炫酷动画. 以及策略模式的使用效果图思路动画分析先实现小圆的旋转动画,开始在ondraw里面写动画策略模式创建一个抽象类 里面抽象方法用于画状态旋转动画聚合动画水波纹扩散动画属性动画源码: ObjectAnimator objectAnima...原创 2018-07-30 10:50:29 · 784 阅读 · 0 评论 -
DialogFragment 从底部弹出对话框 动态设置高度 拷贝代码直接用
效果图需求现在需要实现 底部弹出对话框 并且 弹出的高度 需要刚好在顶部的一个view下面. 这个view的高度不确定.思路整个window的高度减去顶部标题栏和这个view的高度 就是这个对话框的高度实现抽象类public abstract class BottomDialog extends DialogFragment { @Ov...原创 2018-07-07 17:28:40 · 1646 阅读 · 0 评论 -
高级UI-Canvas 使用,Canvas 实践 自定义Drawable
canvas 基本方法Canvas 实践 ReavlView效果阶段一 实现两张图片的拼接阶段二 动态改变图片的裁剪距离canvas 基本方法Canvas直面意思是画布,其实是分装的一个工具类一个Canvas类对象有四大基本要素1、一个是用来保存像素的bitmap —– 画板2、一个Canvas在Bitmap上进行绘制操作 —- 画布或者...原创 2018-02-10 14:39:15 · 470 阅读 · 0 评论 -
高级UI - Paint基本使用.高级渲染使用(最后实现放大镜效果)
Paint 基本使用《Paint的方法主要可以抽象成两大类》: 1.1 负责设置获取图形绘制、路径相关的 1.setStyle(Paint.Style style) 设置画笔样式,取值有 Paint.Style.FILL :填充内部 Paint.Style.FILL_AND_S原创 2018-01-09 19:08:51 · 551 阅读 · 0 评论 -
滑动刻度尺 身高体重腰围
身高体重腰围 滑动刻度尺 有图有真相。原创 2015-05-25 10:38:37 · 3048 阅读 · 12 评论 -
android 连线题实现 自定义view 画线
项目新需求 要来个连线题... 效果图 这个只是基本的逻辑实现了 具体要做的话还需要继续完善 .核心代码已经写出来了剩下的就是 体力活 完善界面 和其他的一些逻辑了 比如按下的效果 画线的颜色宽度.等等.下面是核心代码 如果需要下载 后面有下载链接package com.example.customview01.view;import java.util.A...原创 2016-10-26 11:24:55 · 6630 阅读 · 14 评论 -
上下滚动的图片demo 上下跑马灯效果
OK 群里一个兄弟说要实现 下面这样的效果我开始想的就是 有点像老虎机的样式 于是我就使用自定义wheel 下面是我实现的 效果ok 下面是项目截图原创 2017-01-06 13:07:37 · 2770 阅读 · 0 评论 -
android 自定义比例裁剪图片(拍照 相册)方式
先说下我这个有啥好处 主要是能够自定义设置裁剪图片的比例.比如 :今天产品 给你说裁剪 成16:9 的图片. 你做好了 OK 明天 产品又和你说 裁剪成10:7 的图片 ,你是不是要吐血, 我这里只要设置一行代码就可以改变裁剪的比例.OK 还是老规矩 先上效果图 看看啥样子现在上传的还打上水印了 以前还没有呢. 感觉CSDN博客总会挂啊 上次我半天没打开 后来 问技术支持 说是阿里原创 2016-12-16 16:29:30 · 9848 阅读 · 15 评论 -
仿开心消消乐 大树星星无限循环 点击(自定义view实现)
啥都不说先上效果图把.. 这个是我项目里的效果![这里写图片描述]下面的是我抽取出来的 demo 适配啥的我基本上都做好了没做其他的原创 2016-06-29 17:51:54 · 10377 阅读 · 13 评论 -
android 自定义ProgressBar 文字跟随进度效果
1 字体适配 private void textSizeAdaptive() { //1.获取当前设备的屏幕大小 DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); //2.计算与你开发时设定的屏幕大小的纵横比(这里假设你开发时定的屏幕大小是480*800)原创 2017-11-24 10:05:25 · 2120 阅读 · 0 评论 -
高级UI-流式布局-(行行代码有注释)
UI绘制流程1, MeasureMeasureSpec:在Measure流程中,系统将View的LayoutParams根据父容器所施加的规则转换成对应的MeasureSpec, 在onMeasure中根据这个MeasureSpec来确定view的测量宽高 测量 三种测量模式 - AT_MOST 至多 - EXACTLY 精确的测量 - UNSPECIFIED原创 2018-01-02 15:58:35 · 679 阅读 · 0 评论 -
高级UI-Xfermode
一、Xfermode通过使用Xfermode将绘制的图形的像素和Canvas上对应位置的像素按照一定的规则进行混合,形成新的像素,再更新到Canvas中形成最终的图形使用的时候都是通过Paint.setXfermode我们一个像素的颜色都是由四个分量组成,即ARGB,A表示的是我们Alpha值,RGB表示的是颜色S表示的是原像素,原像素的值表示[Sa,Sc] Sa表示的就是源像素的Alpha值,Sc原创 2018-01-17 14:11:56 · 254 阅读 · 0 评论 -
android 九宫格 移动 并且删除 带动画效果
啥都不说了 先来带效果图ok 这效果实现了移动 删除 还有动画 给有需要的人思路是 重写 gridview 监听 按下事件package com.example.mygridview.view;import android.content.Context;import android.graphics.Bitmap;import android.graphics.PixelFormat;i原创 2015-11-11 13:42:17 · 4234 阅读 · 3 评论