02 2015 档案

摘要:Path是android中用来封装几何学路径的一个类,因为Path在图形绘制上占的比重还是相当大的。你可以用它来绘制各种样式的几何图形,做图表什么的都可以。一、画线段1.1lineT(float x, float y)先来看一段代码: @Override protected void o... 阅读全文
posted @ 2015-02-26 13:27 developer_Kale 阅读(7389) 评论(0) 推荐(2) 编辑
摘要:Canvas所提供的各种方法根据功能来看大致可以分为几类:第一是以drawXXX为主的绘制方法;第二是以clipXXX为主的裁剪方法;第三是以scale、skew、translate和rotate组成的Canvas变换方法;最后一类则是以saveXXX和restoreXXX构成的画布锁定和还原;还有... 阅读全文
posted @ 2015-02-26 12:01 developer_Kale 阅读(9600) 评论(0) 推荐(0) 编辑
摘要:一、概述setShader(Shadershader)中传入的自然是shader对象了,shader类是Android在图形变换中非常重要的一个类。Shader在三维软件中我们称之为着色器,其作用是来给图像着色。它有五个子类,像PathEffect一样,它的每个子类都实现了一种Shader。下面来看... 阅读全文
posted @ 2015-02-24 13:55 developer_Kale 阅读(19337) 评论(0) 推荐(0) 编辑
摘要:一、前言 我们用set方法来设置画笔的样式,类似于我们挑选画笔画画的过程。由于上面有些方法不支持硬件加速,所以在高版本系统中可能会没有效果。因此,我们首先来看看官方废弃的方法。下图来自:https://developer.android.com/guide/topics/graphics/hard... 阅读全文
posted @ 2015-02-23 11:52 developer_Kale 阅读(4388) 评论(0) 推荐(0) 编辑
摘要:一、setPathEffect()这个方法一看就和path有关,顾名思义,它就是给path设置样式(效果)的。PathEffect这个路径效果类没有具体的实现,效果是由它的六个子类实现的:这六个子类分别可以实现不同的路径效果:下面,我们来用代码来具体实现一下。二、测试代码2.1 代码框架首先初始化p... 阅读全文
posted @ 2015-02-22 22:25 developer_Kale 阅读(16649) 评论(2) 推荐(2) 编辑
摘要:一、setMaskFilter(MaskFilter maskfilter)setMaskFilter(MaskFilter maskfilter)是paint中的方法,它可以用来对图像进行一定的处理。这个方法需要传入一个MaskFilter对象。但MaskFilter类中没有任何实现方法,所以我们... 阅读全文
posted @ 2015-02-22 21:15 developer_Kale 阅读(12228) 评论(0) 推荐(0) 编辑
摘要:TextPaint是paint的子类,用它可以很方便的进行文字的绘制,一般情况下遇到绘制文字的需求时,我们一般用TextPaint所提供的方法。开始学习如何绘制文字之前,我们必须要先了解下android中文字是怎么绘制到屏幕上的,文字的格式又是怎么样的。一、FontMetrics1.1 理论知识... 阅读全文
posted @ 2015-02-22 20:05 developer_Kale 阅读(39364) 评论(4) 推荐(2) 编辑
摘要:一、setXfermode(Xfermode xfermode)Xfermode国外有大神称之为过渡模式,这种翻译比较贴切但恐怕不易理解,大家也可以直接称之为图像混合模式,因为所谓的“过渡”其实就是图像混合的一种,这个方法跟我们上面讲到的setColorFilter蛮相似的。查看API文档发现其果然... 阅读全文
posted @ 2015-02-21 20:53 developer_Kale 阅读(26770) 评论(0) 推荐(2) 编辑
摘要:一、简介setColorFilter(ColorFilter filter)设置颜色过滤,这个方法需要我们传入一个ColorFilter参数同样也会返回一个ColorFilter实例。我们在setColorFilter(ColorFilter filter)的时候可以直接传入ColorMatrixC... 阅读全文
posted @ 2015-02-21 18:31 developer_Kale 阅读(25112) 评论(1) 推荐(4) 编辑
摘要:给EditText做限制时,我们想要输入的字符串必须都是中文,不出现任何其他字符,下面的类可以很好的实现这个要求。InputLenLimit.javapackage com.kale.buttonselector;import android.content.Context;import andro... 阅读全文
posted @ 2015-02-21 12:05 developer_Kale 阅读(3568) 评论(0) 推荐(0) 编辑
摘要:一、简介项目地址:https://github.com/stuxuhai/jpinyinJPinyin是一个汉字转拼音的Java开源类库,在PinYin4j的功能基础上做了一些改进。【JPinyin主要特性】1、准确、完善的字库;Unicode编码从4E00-9FA5范围及3007(〇)的20903... 阅读全文
posted @ 2015-02-21 11:33 developer_Kale 阅读(2829) 评论(0) 推荐(0) 编辑
摘要:原文地址:http://www.cnblogs.com/runssnail/p/4250549.html说明:本文在原文地址上有所改动一、小故事在讲正题之前我们讲一段有关任务传递的小故事,抛砖迎玉下:话说一家软件公司,来一个任务,分派给了开发经理去完成开发经理拿到,看了一下,感觉好简单,于是开发经理... 阅读全文
posted @ 2015-02-20 19:35 developer_Kale 阅读(330) 评论(0) 推荐(0) 编辑
摘要:我们可以用selector来配置button可用或者不可用时的背景,也可以用它来配置button不同状态下的文字颜色。下面左图是可用状态,右图是不可用状态。一、配置按钮不同状态的背景首先我们准备下按钮的背景,这里是shape来做的。分为可用和不可用的背景,有蓝色(可用状态)和红色(不可用状态)两个背... 阅读全文
posted @ 2015-02-20 19:19 developer_Kale 阅读(7249) 评论(0) 推荐(0) 编辑
摘要:在drawable/xxx.xml中配置,通过配置selector,可以使系统运行时根据控件对象的状态使用相应的图片、文字等。android:state_selected 控件选中状态,可以为true或falseandroid:state_focused 控件获得焦点状态,可以为true或false... 阅读全文
posted @ 2015-02-20 19:06 developer_Kale 阅读(1794) 评论(0) 推荐(0) 编辑
摘要:Android提供了上面的多个测试类,可以允许我们对于单个方法、Activity、Service、Application等多个对象进行测试,单元测试可以很方便的让我们对代码进行测试,并且方便对重构后的代码进行检查。本篇将简要的讲解如何对Android中的对象进行测试。一、准备工作首先在manifes... 阅读全文
posted @ 2015-02-19 21:12 developer_Kale 阅读(7942) 评论(1) 推荐(0) 编辑
摘要:Android Lint是SDK Tools 16 (ADT 16)之后才引入的工具,通过它对Android工程源代码进行扫描和检查,可发现潜在的问题,以便程序员及早修正这个问题。Android Lint提供了命令行方式执行,还可与IDE(如Eclipse)集成,并提供了html形式的输出报告。... 阅读全文
posted @ 2015-02-18 10:51 developer_Kale 阅读(409) 评论(0) 推荐(0) 编辑
摘要:一、适配器1.1 分页显示数据因为聊天信息数目很多,所以adpter需要做分页处理,这里的分页处理是我自己实现的,如果有更好的办法欢迎在评论中告知。我们从友盟的反馈SDK中能得到聊天的list,我设定的是一次性显示10条数据,所以在适配器中传入和传出的position并不是listview的inde... 阅读全文
posted @ 2015-02-18 10:26 developer_Kale 阅读(3299) 评论(1) 推荐(1) 编辑
摘要:我们一般是监听EditText的状态,看EditText中是不是有文字,根据有无进行不同的操作。 // 给editText添加监听器 editText.addTextChangedListener(new TextWatcher() { @Override... 阅读全文
posted @ 2015-02-17 19:57 developer_Kale 阅读(3412) 评论(0) 推荐(0) 编辑
摘要:/** * @author:Jack Tony * @description : 监听listview的滑动状态,如果到了顶部就刷新数据 * @date :2015年2月9日 */ private class ListViewListener imple... 阅读全文
posted @ 2015-02-17 18:58 developer_Kale 阅读(1124) 评论(2) 推荐(0) 编辑
摘要:由于没有自己的服务器,我就找了个能实现双方通信的SDK,这个SDK是友盟的用户反馈SDK。本系列的博文关注的不是网络通信,而是如何在网络通信机制已经做好的情况下,做出一个可用的聊天系统。其实,刚开始做的时候觉得适配器挺难的,但后来发现实现和QQ相同的布局文件也需要技术,所以本篇就来详细的说下布局... 阅读全文
posted @ 2015-02-17 13:42 developer_Kale 阅读(4141) 评论(6) 推荐(5) 编辑
摘要:在做聊天界面的时候想要发送新的数据后,listview自动滚动到底部,显示出最新的数据。网上找了两个方法,觉得不错,记录一下。方法一:给listview添加下面两个属性android:stackFromBottom="true"android:transcriptMode="alwaysScroll... 阅读全文
posted @ 2015-02-09 09:56 developer_Kale 阅读(6835) 评论(0) 推荐(0) 编辑
摘要:我们一般会调用notifydatasetchange通知listView刷新界面。但会造成getView方法被多次调用(画面上能显示多少就会被调用多少次),如果是很明确的知道只更新了list中的某一个项的数据,应该尽量避免getView被无辜的多次调用。我们希望的是对屏幕上已经显示的item进行针对... 阅读全文
posted @ 2015-02-07 11:19 developer_Kale 阅读(2356) 评论(0) 推荐(0) 编辑
摘要:一、布局文件总共两个布局文件,一个是GridView,还有一个是GridView的item,是NetworkImageView和TextViewactivity_main.xml photo_layout.xml 二、MainActivity & Application1... 阅读全文
posted @ 2015-02-06 19:10 developer_Kale 阅读(3113) 评论(1) 推荐(0) 编辑
摘要:原文:http://yanmingming.sinaapp.com/?p=1251原文其实不叫这个名字,本文对于原文有一定的修改,觉得这个名字比较适合本篇。一、ListView 的工作原理Adapter的作用就是ListView界面与数据交互的桥梁,当列表里面每一项显示到页面上时,都会调用Adapt... 阅读全文
posted @ 2015-02-06 18:32 developer_Kale 阅读(425) 评论(0) 推荐(0) 编辑
摘要:如果一个布局十分复杂,那么就需要来排查是否出现了过度绘制,如果出现了,那么很可能会造成刷新率下降,造成卡顿的现象。那么什么是过度绘制呢?过度绘制就是在同一个区域中叠加了多个控件。这就像小时候我们画画,白纸就是没有绘制的画板,如果我们画了一个房子,涂上了红色,又在上面画了窗户,图上了棕色,窗户上又画了... 阅读全文
posted @ 2015-02-06 17:58 developer_Kale 阅读(2563) 评论(0) 推荐(0) 编辑
摘要:之前的几篇文章中介绍了android中常用的一些工具,今天介绍的工具也是比较实用和方便的,它可以用量化的指标告诉我们哪个方法执行的时间最长,被调用的次数最多,有没有重复调用。下面我们就来看看它是怎么为我们所用的。一、标注测试的代码区域如果我们想要测试gridView设置适配器这段代码,该怎么做呢?很... 阅读全文
posted @ 2015-02-06 17:23 developer_Kale 阅读(1607) 评论(0) 推荐(0) 编辑
摘要:Byte[]转BitmapBitmapFactory.decodeByteArray(data, 0, data.length);Bitmap转Byte[]ByteArrayOutputStream baos = new ByteArrayOutputStream();bitmap.compress... 阅读全文
posted @ 2015-02-05 09:47 developer_Kale 阅读(346) 评论(0) 推荐(0) 编辑
摘要:一、是否是线程安全的Vector是同步的, 而ArrayList不是.因为Vector是同步的, 所以它是线程安全的.同样, 因为Vecotr是同步的, 所以他需要额外的开销来维持同步锁, 所以它要比ArrayList要慢.但仅仅是理论上说,具体测试结果二者差别十分不明显二、动态增加元素的过程Vec... 阅读全文
posted @ 2015-02-03 09:37 developer_Kale 阅读(261) 评论(0) 推荐(0) 编辑
摘要:本文转载自:http://blog.csdn.net/aaa2832/article/details/194196791内存泄漏的排查方法Dalvik Debug Monitor Server (DDMS)是ADT插件的一部分,其中有两项功能可用于内存检查:·heap查看堆的分配情况·allocat... 阅读全文
posted @ 2015-02-02 16:44 developer_Kale 阅读(8242) 评论(0) 推荐(0) 编辑
摘要:最近在做一个照片墙的应用,涉及到很多知识,其中难点在于如何应对数量庞大的图片,这就涉及到内存管理的知识了。今天介绍的工具是DDMS中自带的Heap,它可以显示出当前引用占用的内存,剩余的内存等信息。下面我们就来使用它吧~首先是进入DDMS,然后运行应用,这时候就能在左边的区域看到应用的包名了。选中要... 阅读全文
posted @ 2015-02-02 15:33 developer_Kale 阅读(2641) 评论(0) 推荐(0) 编辑

网站流量统计工具
点击右上角即可分享
微信分享提示