今天在Android开发过程中,在改原来在WTK上写过的底层方法,发现Android里面createImage(Android里面叫createBitmap)创建的时候无法像WTK里面一样直接创建ARGB数组

WTK方法如下

createRGBImage(int[] rgb, int width, int height, boolean processAlpha) //Creates an immutable image from a sequence of ARGB values, specified as 0xAARRGGBB.

而Android的BitmapFactory倒是有一个

decodeByteArray(byte[] data, int offset, int length, BitmapFactory.Options opts) //Decode an immutable bitmap from the specified byte array.

单这一方式,经过我一上午的试验,发现只能创建相应压缩格式的图片,比如PNG,JPEG等,于是决定跟踪写一个接口。

流程大概是这样的。

1.先创建一张,指定大小的空图

2.之后通过setPixels将相应的数组贴进去,setPixels的第一个参数刚好是个int型,表示ARGB的数值。

于是就解决啦。

在实际的调试过程中,我下断点跟踪Bitmap相关变量,发现里面有个参数mHeight和mWidth一直为-1,我以为图片没有创建出来,其实并不是,在内部他已经创建出来了,只需再次调用bm.getHeight()这个值就出来啦。

更正,Android里面本身带类似于WTK22里面的API,只是当时我调试时未知原因导致崩溃,所以没调出来。

static Bitmap createBitmap(int[] colors, int offset, int stride, int width, int height, Bitmap.Config config) Returns a immutable bitmap with the specified width and height, with each pixel value set to the corresponding value in the colors array.

此方法即可

更多相关文章

  1. 【Android(安卓)Studio探索之路系列】之五:Android(安卓)Studio项
  2. android之反射创建一个实例:构造方法带参和不带参
  3. 一步一步学习android(1)---Menu
  4. 从输入流中获取数据并以字节数组返回,这种输入流可以来自Android
  5. 【android】存储数组数据到SharedPreferences
  6. HttpUrlConnection的应用
  7. Android(安卓)Studio学习笔记创建新窗口(activity)并进行跳转
  8. Android创建快捷方式
  9. ListView的Adapter使用 之 初学ArrayAdapter String

随机推荐

  1. android 播放网络或本地gif格式的动态图
  2. delphi xe5 android sample
  3. Android用户登录数据存储的三种方式
  4. Android(安卓)对话框(Dialog)大全
  5. Android(安卓)游戏开发中 OnTouchEvent()
  6. Android(安卓)Vector(Vector/Vector动画)
  7. Android(安卓)联系人、选择联系人组件库
  8. 仿苹果弹性布局
  9. Android(安卓)自定义View学习(十一)——V
  10. android gridview点击子选项动态改变item