安卓图像处理
文章平均质量分 54
安卓工匠
工匠精神
展开
-
Glide 使用说明
一. 下载在build.gradle中添加依赖: compile 'com.github.bumptech.glide:glide:3.7.0'1需要support-v4库的支持,如果你的项目没有support-v4库(项目默认已经添加了),还需要添加support-v4依赖: compile 'com.android.support:support-v4:23.3.0'1然后配置混淆规转载 2017-09-30 13:06:24 · 290 阅读 · 0 评论 -
安卓shape_百变控件形状
很多时候,使用shape能够实现的效果,你用一张图片也能够实现,但问题是一张图片无论你怎么压缩,它都不可能比一个xml文件小,因此,为了获得一个高性能的手机App,我们在开发中应该遵循这样一个原则:能够用shape实现的效果尽量不使用图片来实现。今天我们就一起来看看shape的使用。首先,使用shape画的图形,这个xml文件的根节点是shape,如下: [java]&nbs...转载 2018-08-08 10:16:05 · 416 阅读 · 0 评论 -
Scroller使用详解
一、概述这个类封装了滚动操作。滚动的持续时间可以通过构造函数传递,并且可以指定滚动动作的持续的最长时间。经过这段时间,滚动会自动定位到最终位置,并且通过computeScrollOffset()会得到的返回值为false,表明滚动动作已经结束。二、构造函函数public Scroller (Context context)使用缺省的持续持续时间和动画插入器创建一个Scroller...转载 2018-06-08 18:59:26 · 1310 阅读 · 0 评论 -
Android如何绘制视图,解释了为何onMeasure有时要调用多次
原文地址:How Android Draws Views当Activity获取焦点的时候,它就需要绘制布局。Android框架会处理绘制过程,但这个Activity必须提供它布局树的根节点。绘制过程是从布局的根节点开始的。这个过程需要测量和绘制布局树。绘制过程是通过遍历树和渲染每个与绘制区域相交的视图来处理的。接下来,ViewGroup职责就是请求它的每个...翻译 2018-05-31 17:26:46 · 397 阅读 · 0 评论 -
安卓中自定义控件心得(2)--如何获取我们activity根View的背景色,可以用于SurfaceView的背景设置
直接看代码吧,我用的反射int childs = ((ViewGroup) getWindow().getDecorView()).getChildCount(); Drawable mDrawable = (Drawable) getWindow().getDecorView().getBackground(); if (mDrawable != nul...原创 2018-05-30 18:27:35 · 1413 阅读 · 0 评论 -
安卓中自定义控件心得(1)—选用SurfaceView还是View问题
问题:在自定义控件中,我们可以集成view或者SurfaceView,我们什么时候使用View,什么时候使用SurfaceView呢?View: 使用情景:如果没有动态效果,或者动画效果比较简单,使用View最合适不过了 线程:在主线程中绘制,所以在不影响UI线程的情况下比较适用。假如我们的自定义控件有连续不断的动画,这样就会比较频繁的占用主线程,当我们再做其在主线...原创 2018-05-29 14:48:55 · 247 阅读 · 0 评论 -
Android中SurfaceView使用详解
1.什么是SurfaceView? Surface意为表层、表面,顾名思义SurfaceView就是指一个在表层的View对象。为什么说是在表层呢,这是因为它有点特殊跟其他View不一样,其他View是绘制在“表层”的上面,而它就是充当“表层”本身。SDK的文档 说到:SurfaceView就...原创 2018-05-29 14:31:28 · 343 阅读 · 0 评论 -
自定义控件(4):文字的绘制
这篇是Android开发进阶,自定义View系列的第三篇了,如果你没看过前两篇,可以先去看一下: Android 开发进阶: 自定义 View 1-1 绘制基础 Android 开发进阶: 自定义 View 1-2 Paint 详解简介上期的 Paint 详解里已经说过,文字的绘制所能控制的内容太多太细,必须拆成单独的一期专门来讲。今天这期,就是来把这...转载 2018-05-27 16:06:37 · 300 阅读 · 0 评论 -
自定义控件-Paint(3)_详解Paint的setShader(Shader shader)
概述我们在用Android中的Canvas绘制各种图形时,可以通过Paint.setShader(shader)方法为画笔Paint设置shader,这样就可以绘制出多彩的图形。那么Shader是什么呢?做过GPU绘图的同学应该都知道这个词汇,Shader就是着色器的意思。我们可以这样理解,Canvas中的各种drawXXX方法定义了图形的形状,画笔中的Sh...转载 2018-05-25 19:58:26 · 1233 阅读 · 2 评论 -
自定义控件-(2)_神奇的Fading Edge,让你的View更有层次感!
最近在研究Android Framework层源码,发现我们对源码的理解应该建立在对API的理解之上,如果有一些API你没用过,那么即使你在源码中见到这个东西都不知道是干嘛的,更谈不上理解了。一直以来我都很想把View的绘制方法draw详细的走一遍,但是这里涉及到的细节问题是在是太多了,因此,今天我们还是先来看看Fading Edge,为draw方法详解继续打基础...转载 2018-05-25 10:09:33 · 473 阅读 · 0 评论 -
自定义控件-图像绘制(1)_Canvas详解
Canvas所提供的各种方法根据功能来看大致可以分为几类:第一是以drawXXX为主的绘制方法;第二是以clipXXX为主的裁剪方法;第三是以scale、skew、translate和rotate组成的Canvas变换方法;最后一类则是以saveXXX和restoreXXX构成的画布锁定和还原;还有一些其他的就不归类了。 如果用到的不能硬件加速的方法,请务必关闭硬件加速,...转载 2018-05-25 09:51:28 · 441 阅读 · 0 评论 -
YUV与RGB格式转换
YUV与RGB格式转换 转载 2015年11月26日 12:24:43 标签:转载 2017-12-24 11:13:12 · 23957 阅读 · 0 评论 -
Android截屏的几种实现
Android截屏的几种实现最近我们的APP要求需要截屏功能,网上看了看大致有一下几种实现的方式,由于我们的机器是特定的设备,(类似于广告机,已经ROOT),所以就采用最简单的方式,只需在代码中执行shell命令即可实现,下面就给大家介绍一下各种截屏的方式。方式一 public static Bitmap capture(Activity activity) { ...原创 2019-09-03 14:59:33 · 17246 阅读 · 4 评论