
Android进阶
文章平均质量分 70
sjf0115
Stay Hungry, Stay Foolish---我们必须用谦虚者的自觉,饥饿者的渴望的求职态度,来拥抱我们的未来。
展开
-
Android学习笔记进阶20之得到图片的缩略图
简介之前往往是通过Bitmap、Drawable和Canvas配合完成,需要写一系列繁杂的逻辑去缩小原有图片,从而得到缩略图。现在我给大家介绍一种比较简单的方法:(网上有)在Android 2.2版本中,新增了一个ThumbnailUtils工具类来是实现缩略图,此工具类的功能是强大的,使用是简单,它提供了一个常量和三个方法。利用这些常数和方法,可以轻松快捷的实现图片和视频的缩略图功能原创 2012-02-20 21:27:36 · 14652 阅读 · 3 评论 -
Android学习笔记进阶15之Shader渲染
Android提供的Shader类主要是渲染图像以及一些几何图形。Shader有几个直接子类:BitmapShader : 主要用来渲染图像LinearGradient :用来进行线性渲染RadialGradient : 用来进行环形渲染SweepGradient : 扫描渐变---围绕一个中心点扫描渐变就像电影里那种雷达扫描,用来梯度渲染。ComposeSh原创 2012-02-17 13:15:17 · 11173 阅读 · 0 评论 -
Android开发经验之获取画在画布上的字符串长度、宽度(所占像素宽度)
Android中获取字符串长度、宽度(所占像素宽度) 计算出当前绘制出来的字符串有多宽,可以这么来! 方法1: Paint paint = new Paint(); Rect rect = new Rect(); //返回包围整个字符串的最小的一个Rect区域 paint.getTextBounds(text, 0, 1, rect); strwid = rect.width(原创 2012-03-01 19:55:54 · 8415 阅读 · 0 评论 -
Android开发经验一判断当前屏幕是全屏还是非全屏
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); int v = this.getWindow(原创 2012-03-01 19:12:36 · 6226 阅读 · 0 评论 -
Android开发经验之点击图片判断是否在图片范围之内
package xiaosi.grivaty;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Rect;import and原创 2012-03-01 20:59:05 · 7625 阅读 · 0 评论 -
Android开发经验之在图片上随意点击移动文字
只要在图片范围之内,文字可随意点击移动。package xiaosi.GetTextImage;import android.content.Context;import android.content.res.Resources;import android.graphics.Bitmap;import android.graphics.BitmapFactory;impo原创 2012-03-02 10:47:02 · 7704 阅读 · 8 评论 -
Android学习笔记之初步学百度地图
用户在使用API之前需要获取百度地图移动版API Key,并且该KEY与您引用API的程序名称有关,具体流程请参照:申请API KEY百度地图API支持Android 1.5及以上系统。API添加到Andoid工程中必须显得下载API开发包:点击下载解压之后包括两个文件baidumapapi.jar和libBMapApiEngine.so。在工程根目录下创建ibs\原创 2012-03-05 09:20:30 · 4258 阅读 · 4 评论 -
Android学习笔记之百度地图(分条目覆盖物:ItemizedOverlay)
看看多了那三个小图片就是我们的效果结果。点击一下也会有相应的。试一下吧!某个类型的覆盖物,包含多个类型相同、显示方式相同、处理方式相同的项时,使用此类:自定义类继承ItemizedOverlay,并Override其draw()方法,如果需要点击、按键、触摸等交互操作,还需Override onTap()等方法。主要用到类 OverlayItem,百度地图上的API原创 2012-03-05 15:45:47 · 5845 阅读 · 0 评论 -
Android学习笔记之百度地图Overlay
地图覆盖物概述所有叠加或覆盖到地图的内容,我们统称为地图覆盖物。如标注、矢量图形元素(包括:折线和多边形和圆)、定位图标等。覆盖物拥有自己的地理坐标,当您拖动或缩放地图时,它们会相应的移动。地图API提供了如下几种覆盖物:Overlay:覆盖物的抽象基类,所有的覆盖物均继承此类的方法,实现用户自定义图层显示。MyLocationOverlay:一个负责显示用户当前位置的Ov原创 2012-03-05 14:16:32 · 14551 阅读 · 2 评论 -
Android学习笔记之百度地图(搜索服务)
百度地图移动版API集成搜索服务包括:位置检索、周边检索、范围检索、公交检索、驾乘检索、步行检索,通过初始化MKSearch类,注册搜索结果的监听对象MKSearchListener,实现异步搜索服务。首先自定义MySearchListener实现MKSearchListener接口,通过不同的回调方法,获得搜索结果:public class MySearchListener implemen原创 2012-03-05 16:07:56 · 7890 阅读 · 0 评论 -
Android学习笔记之百度地图(周边检索poiSearchNearBy跳转页面并输出搜索结果)
package xiaosi.baiduMap;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import com.baidu.mapapi.BMapManager;import com.baidu.mapapi.GeoPoint;impo原创 2012-03-05 19:29:22 · 9097 阅读 · 10 评论 -
Android学习笔记之百度地图(驾车路线搜索及RouteOverlay步行路线搜索及RouteOverlay)
步行路线搜索及RouteOverlay方式与驾车路线搜索类似,只需将mMKSearch.drivingSearch(null, start, null, end)修改为mMKSearch.walkingSearch(null, start, null, end),实现的方法改为onGetWalkingRouteResult即可,不再赘述。驾车路线搜索及RouteOverlay重原创 2012-03-06 10:13:11 · 11338 阅读 · 3 评论 -
Android学习笔记之百度地图(POI搜索之周边检索poiSearchNearBy)
POI搜索有三种方式,根据范围和检索词发起范围检索poiSearchInbounds,城市poi检索poiSearchInCity,周边检索poiSearchNearBy。下以周边检索为例介绍如何进行检索并显示覆盖物PoiOverlay:public int poiSearchNearBy(java.lang.String key, GeoPoint pt, int原创 2012-03-05 16:55:05 · 23771 阅读 · 2 评论 -
Android学习笔记之百度地图(POI搜索之城市poi检索poiSearchInCity)
POI搜索有三种方式,根据范围和检索词发起范围检索poiSearchInbounds,城市poi检索poiSearchInCity,周边检索poiSearchNearBy。public int poiSearchInCity(java.lang.String city, java.lang.String key)城市内poi检索. 异步函数,返回结果在MKSearchL原创 2012-03-05 19:39:08 · 8642 阅读 · 2 评论 -
Android学习笔记之百度地图(根据地名查询经纬度)
重要方法:public int geocode(java.lang.String strAddr, java.lang.String city)根据地址名获取地址信息 异步函数,返回结果在MKSearchListener里的onGetAddrResult方法通知参数:strAddr - 地址名city - 地址所在城市返回:成功返回0,否原创 2012-03-06 11:50:24 · 18002 阅读 · 4 评论 -
Android学习笔记之为Dialog自定义布局,并说明空指针问题
在使用自定义布局时经常会碰见这样的问题:edit = (EditText) findViewById(R.id.edit);并不能获取到控件对象;在后面代码中使用edit时会报错,空指针异常。意思是edit 为null。解决方案:LayoutInflater factory = LayoutInflater.from(MyDialogActivity.this); final原创 2012-03-07 18:03:06 · 10407 阅读 · 3 评论 -
Android学习笔记进阶之在图片上涂鸦(能清屏)
HandWritingActivity.javapackage xiaosi.handWriting;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import android.v原创 2012-03-08 17:30:45 · 21889 阅读 · 11 评论 -
Android学习笔记进阶16之BitmapShader
简介具体的看一下博文:Android学习笔记进阶15之Shader渲染 public BitmapShader(Bitmap bitmap,Shader.TileMode tileX,Shader.TileMode tileY)调用这个方法来产生一个画有一个位图的渲染器(Shader)。bitmap 在渲染器内使用的位图tileX The tili原创 2012-02-17 13:17:16 · 26644 阅读 · 5 评论 -
Android学习笔记进阶17之LinearGradient
具体的看一下博文:Android学习笔记进阶15之Shader渲染 package xiaosi.BitmapShader;import android.app.Activity;import android.os.Bundle;public class BitmapShaderActivity extends Activity { /** Called when t原创 2012-02-17 14:58:36 · 3797 阅读 · 0 评论 -
Android学习笔记进阶21之设置壁纸
别忘记在ApplicationManifest.xml 中加上权限的设置。 壁纸设置方法有三种: 第一 通过WallpaperManager方法中的 setBitmap()第二 通过WallpaperManager方法中的 setResource()第三 通过ContextWrapper 类中提供的setWallpaper()方法 由于 Act原创 2012-02-22 11:44:00 · 4599 阅读 · 1 评论 -
Android学习笔记之滑动翻页(屏幕切换)
如何实现手机上手动滑动翻页效果呢?呵呵,在这里我们就给你们介绍一下吧。一般实现这个特效会用到一个控件:ViewFlipperView切换的控件—ViewFlipper这个控件是什么呢?请注意观看博文Android学习笔记之ViewFilpper 。除了这个ViewFlipper,我们还需要了解一下ViewAnimator。它主要是为其中的View切换提供动画效果。还会用到几个方原创 2012-02-15 19:39:51 · 32025 阅读 · 2 评论 -
Android学习笔记之ViewFlipper
被添加到ViewFlipper中的两个或两个以上的视图之间将执行一个简单的ViewAnimator动画。一次仅能显示一个子视图。如果需要,可以设置间隔时间使子视图像幻灯片一样自动显示。XML属性属性名称描述android:autoStart当设为true时,自动启动动画此时必须是一个布尔值,属性值为true或false原创 2012-02-15 17:28:42 · 8637 阅读 · 0 评论 -
Android学习笔记进阶八之Matrix矩阵
Matrix,中文里叫矩阵,高等数学里有介绍,在图像处理方面,主要是用于平面的缩放、平移、旋转等操作。在Android里面,Matrix由9个float值构成,是一个3*3的矩阵。最好记住。如下图:解释一下,上面的sinX和cosX,表示旋转角度的cos值和sin值,注意,旋转角度是按顺时针方向计算的。translateX和translateY表示x和y的平移量。scale是缩放的原创 2012-02-16 12:20:12 · 6769 阅读 · 1 评论 -
Android学习笔记进阶九之Matrix对称变换
网上很多的倒影特效实际上就是一个对称变换,在改变透明度即可。Matrix对称变换包括很多种,有关于Y轴对称,关于X轴对称,关于y= -x对称等等。1 关于Y轴对称// 获取资源文件的引用res Resources res = getResources(); // 获取图形资源文件 Bitmap bmp = BitmapFactory.decodeResource(res原创 2012-02-16 13:10:00 · 4458 阅读 · 3 评论 -
Android学习笔记进阶十之Matrix错切变换
刚开始我也不懂啥叫错切变换,一看效果图你就恍然大悟。对图像的错切变换做个总结:x = x0 + b*y0;y = d*x0 + y0; 与之对应的方法是:Matrix matrix = new Matrix();matrix.setSkew(0.0f, 0.5f);原创 2012-02-16 13:22:49 · 5002 阅读 · 1 评论 -
Android学习笔记之Bitmap位图的旋转
位图的旋转也可以借助Matrix或者Canvas来实现。通过postRotate方法设置旋转角度,然后用createBitmap方法创建一个经过旋转处理的Bitmap对象,最后用drawBitmap方法绘制到屏幕上,于是就实现了旋转操作。下面例子中把原位图和经旋转处理的位图都绘制到屏幕上,目的是做一个对比。package xiaosi.bitmap;import android原创 2012-02-15 22:27:56 · 32812 阅读 · 1 评论 -
Android学习笔记之Bitmap位图的缩放
位图的缩放也可以借助Matrix或者Canvas来实现。通过postScale(0.5f, 0.3f)方法设置旋转角度,然后用createBitmap方法创建一个经过缩放处理的Bitmap对象,最后用drawBitmap方法绘制到屏幕上,于是就实现了缩放操作。下面例子中把原位图和经缩放处理的位图都绘制到屏幕上,目的是做一个对比。package xiaosi.bitmap;imp原创 2012-02-15 22:43:53 · 26333 阅读 · 1 评论 -
Android学习笔记进阶1之MediaPlayer
MediaPlayer生命周期Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的。 MediaPlayer在底层是基于OpenCore(PacketVideo)的库实现的,为了构建一个MediaPlayer程序,上层还包含了进程间通讯等内容,这种进程间通讯的基础是An原创 2012-02-13 22:28:47 · 2106 阅读 · 0 评论 -
Android学习笔记进阶十一图片动画播放(AnimationDrawable)
大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它。它的使用更加简单,只需要创建一个AnimationDrawabledF对象来表示Frame动画,然后通过addFrame 方法把每一帧要显示的内容添加进去,并设置播放间隔时间,本例子中间隔时间为5S,最后通过start 方法就可。以播放这个动画了,同时还可以通过 setOneShot方法设置是否重复播放。原创 2012-02-16 17:26:48 · 7571 阅读 · 1 评论 -
Android学习笔记之Bitmap位图虽触摸点移动
package xiaosi.bitmap;import android.app.Activity;import android.os.Bundle;public class mianActivity extends Activity{ private surfaceView bitmapView = null; @Override protected void onCreat原创 2012-02-15 23:16:15 · 10029 阅读 · 2 评论 -
Android学习笔记之MediaRecorder
MediaRecorder生命周期简介使用 MediaRecorder 类进行媒体采样,包括音频和视频。MediaRecorder 作为状态机运行。您需要设置不同的参数,比如源设备和格式。设置后,可执行任何时间长度的录制,直到用户停止。MediaRecorder 常用方法有了以上方法接口,在Android中实现录音看起来很简单。下面是一段简单的录音代码:MediaRecor原创 2012-02-13 22:39:17 · 2096 阅读 · 0 评论 -
Android学习笔记进阶十二之裁截图片
package xiaosi.cut;import java.io.File;import android.app.Activity;import android.content.Intent;import android.graphics.drawable.Drawable;import android.net.Uri;import android.os.Bundle;import原创 2012-02-16 22:36:14 · 6195 阅读 · 2 评论 -
Android学习笔记进阶18之画图并保存图片到本地
1、首先创建一个Bitmap图片,并指定大小; 2、在该图片上创建一个新的画布Canvas,然后在画布上绘制,并保存即可; 3、需要保存的目录File,注意如果写的目录如“/sdcard/song/”如果不存在的话,要先创建(file.mkdirs).。4、需要添加权限:Canvas是一个画布,你可以建立一个空白的画布,就直接new一个Canvas对象,不需要参数。原创 2012-02-17 22:08:07 · 15022 阅读 · 2 评论 -
Android学习笔记进阶十三获得本地全部照片
这是Intent的一个用法。在ActivityAction里面有一个“ACTION_GET_CONTENT”字符串常量,该常量让用户选择特定类型的数据。intent.setType("image/*"); 选择本地所有的图片。返回该数据的URI.我们利用该常量生成该图片的位图Bitmap,然后为添加到图片控件(ImageView)上就行了。选择你想要的图片:原创 2012-02-16 23:16:40 · 4208 阅读 · 0 评论 -
Android学习笔记进阶19之给图片加边框
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width){ borderwidth = width; } 具体实现:package xiaosi.imageborder;import android.app.A原创 2012-02-18 08:20:05 · 15956 阅读 · 5 评论 -
Android学习笔记进阶14之像素操作
在我们玩的游戏中我们会经常见到一些图像的特效,比如半透明等效果。要实现这种半透明效果其实并不难,需要我们懂得图像像素的操作。不要怕,其实在Android中Bitmap为我们提供了操作像素的基本方法。我们可以通过getPixels()方法获得该图像的像素并放到一个数组中去,我们操作这个数组就可以了。最后通过setPixels()方法设置这个数组到Bitmap中。在Android中,每一个原创 2012-02-17 11:30:20 · 6995 阅读 · 2 评论 -
Android实战经验之图像处理及特效处理的集锦(总结版)
1 Android学习笔记进阶之在图片上涂鸦(能清屏)2 Android学习笔记之详细讲解画圆角图片3 Android学习笔记进阶20之得到图片的缩略图4 Android学习笔记进阶19之给图片加边框5 Android学习笔记进阶18之画图并保存图片到本地6 android图像处理系列之三--图片色调饱和度、色相、亮度处理7 andro原创 2012-03-10 13:27:36 · 8004 阅读 · 5 评论