Android之自定义View
悠自在
有能力做出成绩,要知道一切来之不易,心不猖狂。
没能力作出成绩,要懂得成长需要努力,心不焦虑。
展开
-
Android之RecyclerView自定义滚动条
根据需求针对横向显示的列表增加一个滚动条显示。效果图:Recycleview列表实现原来是啥就是啥,先看看列表下面的滚动条。滚动条布局: <FrameLayout android:id="@+id/lay_slip" android:layout_width="w...原创 2019-12-13 16:32:24 · 2707 阅读 · 4 评论 -
Android之向上滑动某控件至顶部悬浮
最近实现一个答题的页面,大致内容:顶部是分数,下面都是题目。实现滑动题目时仍保留顶部的操作。很常规的操作,因为题目是根据接口动态实现的,极其复杂,所以滑动使用ScrollView实现。效果:实现思路:重写ScrollView中的onScrollChanged方法,通过接口回调计算滑动距离,控制控件的显示隐藏达到这种效果。在布局中,要浮动的控件并不一定在最上面,通过ScrollV...原创 2019-07-09 17:18:10 · 1601 阅读 · 0 评论 -
Android之自定义View:长按加减
前两天迭代一个报价的APP,选择商品进行结算价格。增加一个人性化操作,长按控件进行快速增长数值。根据控件上个Gif图:除了可以自定义各种颜色、大小等属性之外,可以进行单点、长按、滑动改变数值。原理是监听其触摸事件进行相应判断操作,触摸结束进行动画回复操作。具体的已经在代码中注释。1.自定义StepperView 控件import android.animation...原创 2019-06-14 13:59:03 · 1298 阅读 · 2 评论 -
Android之自定义View:点赞动画效果
实现点赞效果动画,可以根据需求进行修改使用。先上个Gif图:1.自定义DivergeView:import android.content.Context;import android.graphics.Bitmap;import android.graphics.Canvas;import android.graphics.Paint;import android.g...原创 2019-06-12 17:12:48 · 1205 阅读 · 0 评论 -
Android之自定义View:圆形ImageView实现可暂停的旋转动画效果
最近,虽然公司的安卓开发相对还是挺多,依旧在学习自定义View。不怕实现的简单,慢慢做、慢慢理解。效果图:1.先实现自定义圆形ImageView:需要了解上一篇:Android之Canvas绘图中PorterDuffXfermode首先获取到图片的Bitmap,然后进行裁剪圆形的bitmap,然后在onDraw()进行绘制圆形图片输出。import android.con...原创 2019-04-09 09:07:00 · 3325 阅读 · 0 评论 -
Android之自定义View双缓冲机制
记得以前学习c#、java的绘图时,都接触过图像的双缓存技术,解决绘制频繁导致闪屏的问题。今天,记录一下安卓客户端自定义View的缓存技术。由于CPU访问内存的速度要远远快于访问屏幕的速度。安卓端如果需要绘制大量复杂的图像时,每次都一个个从内存中读取图形然后绘制到屏幕就会造成多次地访问屏幕,从而导致效率很低,因此需要使用缓冲技术提高效率。第一层缓冲:(安卓自己实现)绘制图像时不用上述中...原创 2019-04-04 11:01:57 · 950 阅读 · 0 评论 -
Android之Canvas绘图中PorterDuffXfermode
忙里偷闲,增进一下自己的做UI功底,最近进行一段时间学习自定义View。在Android中的Canvas进行绘图时,可以通过使用PorterDuffXfermode将所绘制的图形的像素与Canvas中对应位置的像素按照一定规则进行混合,形成新的像素值,从而更新Canvas中最终的像素颜色值。PorterDuffXfermode支持以下十几种像素颜色的混合模式,分别为:CLEAR、SRC...原创 2019-04-04 09:49:01 · 815 阅读 · 0 评论 -
Android之刷新布局
学习安卓的高级技巧,其中的自定义View是必备课程。目前在研究该方面的东西,能用代码画出东西真令人兴奋!以下是常见绘制后刷新布局的方法:区别。invalidate() :请求重绘View树,即draw()过程。整个刷新UI,并且从头到尾并不会触发onMeasure()方法(控制大小用)。如果是View就重绘View,如果是ViewGroup就全部重绘。一般引起invalidat...原创 2018-08-27 17:06:04 · 8097 阅读 · 0 评论 -
Android绘图的Paint.setAntiAlias()和Paint.setDither()
对画笔进行设置时会有添加这些方法。设置时,都只有一个boolean值,自定义View中经常用到。Paint.setAntiAlias()该方法作用是抗锯齿,学习过图形学课程的朋友,应该都会知道,边界的地方显示的更加平滑。Paint.setDither()该方法是设置防抖动,整个图片显示的更加柔和。...原创 2018-08-27 15:52:47 · 1048 阅读 · 0 评论 -
Android之Custom(自定义) View
自感不会“自定义view”的安卓开发总是萌小白,今天进行一下基础的View的流程进行总结。虽然,网上有很多这些文章,但是自己想再次记忆一下,并没有其他的意图。View工作流程View工作流程主要指measure、layout、draw这三个流程,即测量、布局和绘制。 measure确定View的自身的宽高 layout确定View在父容器放置的位置 draw将View...原创 2018-08-27 15:20:23 · 1341 阅读 · 0 评论 -
Android之自定义View基础
前言自定义View原理是Android开发者必须了解的基础;在了解自定义View之前,你需要有一定的知识储备;本文将全面解析关于自定义View中的所有知识基础。目录1. View的分类视图View主要分为两类:类别解释特点单一视图即一个View,如TextView不包含子View视图组即多个View组成的ViewGroup,如LinearLayout包含子View2. View类简介View类是A...原创 2018-06-09 21:51:03 · 284 阅读 · 0 评论