代码下载 需求1:实心饼图,颜色填充百分比区域2:带区域说明3:饼图有阴影 思路:这个其实和绘制进度条原理差不多,都是360度根据所占百分比算出绘制弧度,然后调用canvas的画弧函数。阴影其实是一个空心圆,使用原生RadialGradient圆形渐变,颜色从黑色到透明,达到阴影效果。右侧圆角方形是在安卓5.0新引入的drawRoundRect函数。安卓5.0以下绘制方形 原文:http://www.cnblogs.com/kimmy/p/4918659.html
自从腾讯QQ中的圆形头像,火了起来后,现在我们在一些应用中都能看到圆形头像的身影,在个人主页或者个人资料面板中使用圆形头像,会使整个布局变得更加优雅 现在我们来进行第一步,创建一个继承ImageView的抽象类MakeRoundImage。让他重写onDraw方法,并且声明一个画笔 import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.widge...
作者 : 韩曙亮转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38420197一. AChartEngine 简介1. 项目地址AChartEngine 简介 : AChartEngine 是 Android 平台的图表开发库, 能绘制 折线图, 饼图, 气泡图, 柱状图, 散点图, 面积图等统计图表;最新版本 : 1.1.0 版本;AChartEngine 地址 : https://code.google.com/p/achartengine/ ;-- 示例代码下载地址 : https://achartengine.googlecode.com/files/achartengi...
版权声明:本文为博主原创文章,未经博主允许不得转载。Android 仿PhotoShop调色板应用(二) 透明度绘制之AlphaPatternDrawable这里讲一下如何实现PS调色板中的透明度选择条.首先说一下要点:1. 透明度选择条实际上是基于白色(0xffffffff)和灰色(0xffcbcbcb)之间的颜色区间选取, 由此我们可以实现一个半透明颜色的选取2.该应用不仅可以做透明度颜色选取,也可以在应用中实现半透明的图像效果 下面看一下代码,主要是基于Drawable的重...
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/16330267在上一篇文章中,我带着大家一起剖析了一下LayoutInflater的工作原理,可以算是对View进行深入了解的第一步吧。那么本篇文章中,我们将继续对View进行深入探究,看一看它的绘制流程到底是什么样的。如果你还没有看过我的上一篇文章,可以先去阅读 Android LayoutInflater原理分析,带你一步步深入了解View(一) 。相信每个Android程序员都知道,我们每天...
Android 中 Activity 是作为应用程序的载体存在,代表着一个完整的用户界面,提供了一个窗口来绘制各种视图,当 Activity 启动时,我们会通过 setContentView 方法来设置一个内容视图,这个内容视图就是用户看到的界面。 PhoneWindow 是 Android 系统中最基本的窗口系统,每个 Activity 会创建一个。PhoneWindow 是 Activity 和 View 系统交互的借口。DecorView 本质上是一个 FrameLayout,是 Activity 中所有 View 的祖先。绘制的...
android中自定义view的过程中,需要了解的绘制知识。1.画笔paint:画笔设置:<span style="font-size:14px;"> paint.setAntiAlias(true);//抗锯齿功能paint.setColor(Color.RED); //设置画笔颜色paint.setStyle(Style.FILL);//设置填充样式paint.setStrokeWidth(30);//设置画笔宽度paint.setShadowLayer(10, 15, 15, Color.GREEN);//设置阴影Paint.Style.FILL :填充内部Paint.Style.FILL_AND_STROKE :填充内部和描边Paint.Sty...
创建Window在Activity的attach方法中通过调用PolicyManager.makeNewWindo创建Window,将一个View add到WindowManager时,WindowManagerImpl创建一个ViewRoot来管理该窗口的根View。并通过ViewRoot.setView方法把该View传给ViewRoot。 final void attach(Context context, ActivityThread aThread,Instrumentation instr, IBinder token, int ident,Application application, Intent intent, ActivityInfo info,CharSequence titl...
效果图实现源码(已上传我的GitHub):https://github.com/xiaxveliang/GL_AUDIO_VIDEO_RECODE参考:http://bigflake.com/mediacodec/EncodeAndMuxTest.java.txt对于以上代码,我做了一个简单的注释,代码如下:
import android.media.MediaCodec;
import android.media.MediaCodecInfo;
import android.media.MediaFormat;
import android.media.MediaMuxer;
import android.opengl.EGL14;
import android.opengl.EGLConfig;
impo...
前面我们分析了Activity、Dialog、PopupWindow的加载绘制流程,相信大家对整个Android系统中的窗口绘制流程已经有了一个比较清晰的认识了,这里最后再给大家介绍一下Toast的加载绘制流程。其实Toast窗口和Activity、Dialog、PopupWindow有一个不太一样的地方,就是Toast窗口是属于系统级别的窗口,他和输入框等类似的,不属于某一个应用,即不属于某一个进程,所以自然而然的,一旦涉及到Toast的加载绘制流程就会涉及到进程间通讯,...
事实上每一个View中都有Canvas能够用来绘制动画。仅仅须要在这个View中重载onDraw()方法就能够,可是SurfaceView类是一个专门用来制动动画的类。Canvas(中文叫做"画布")就和HTML5中的canvas标签一样能够在一定区域内自由绘制图形。Canvas+SurfaceView制作的动画与View Animation和Property Animation这类动画比起来更加适合大量的集中播放的动画,比方游戏画面、相机的图像显示等。由于SurfaceView一般会在还有一个专门的线程中不断...
置顶文章:《纯CSS打造银色MacBook Air(完整版)》 上一篇:《Canvas模拟粒子系统》 作者主页:myvin博主QQ:851399101(点击QQ和博主发起临时会话) 正文 用css绘制的Android Robot,比较简单,主要用了position,还有rotate和translete属性。因为简单就不说了。先上效果图,再直接上代码。 实时效果图和代码也可以点击这里到codepen上查看。 效果如如下: [效果图](http://images.cnblogs.com/cnblogs_com/myvin/710...
一.开始
在Activity的onCreate方法中setContenView后,创建了mDecorView,那么它是怎么执行onMeause,onLayout,onDraw方法的呢?我们从源码分析开始。
二.源码解析
Activity的入口是在ActivityThread执行的,我们看下ActivityThread中有handleMessage方法中RELAUNCH_ACTIVITY,执行handleRelaunchActivityLocally方法public void handleMessage(Message msg) {if (DEBUG_MESSAGES) Slog.v(TAG, ">>> handling: " + codeToString(ms...
我在Android中使用ItemizedOverlay遇到异常错误.
我正在创建一个GPS跟踪设备,该设备可以绘制数据库中存储的航点之间的路线.
当我通过Eclipse中的仿真器提供前两组经度和纬度点时,它会按照我的意愿绘制一条红线,但是如果我发送另一个GPS点,它将设置为动画点,但不会从该点绘制一条线最后一点.public class MyOverlay extends ItemizedOverlay<OverlayItem>
{// private Projection projection;
private Paint linePaint;
private Ve...
因此,我将几个月前为iOS开发的应用移植回了Android.该应用程序具有可在地图上显示的数百(341)个点的数据库.在iOS上执行此操作时,将这些点添加到我的地图时没有遇到性能问题.如果用户缩小,则舒尔(Shure),以便所有可见的点立即出现,您可能会注意到速度有所下降,但没什么大不了的.另一方面,在Android上,这极其缓慢,直到冻结为止. AVD上的速度也比手机(HTC Hero)上的速度慢.
我想指出,我是Java的新手,但是我有C/C++ / OBJ-C的经验.我在...