android 获取应用图标bitmap跟data数据流怎么有效

android 获取应用图标bitmap跟data数据流怎么有效,第1张

通过BitmapFactory这个工具类,BitmapFactory的所有函数都是static,这个辅助类可以通过资源ID、路径、文件、数据流等方式来获取位图。大家可以打开API 看一下里边全是静态方法。这个类里边有一个叫做 decodeStream(InputStream is)

此方法可以 解码一个新的位图从一个InputStream。这是获得资源的InputStream。

代码:

Java代码

InputStream is = getResources()openRawResource(Rdrawableicon);

Bitmap mBitmap = BitmapFactorydecodeStream(is);

Paint mPaint = new Paint();

canvasdrawBitmap(mBitmap, 40, 40, mPaint);

Android UI之ImageView旋转的几种方式

Bitmap bitmap = ((BitmapDrawable)getResources()getDrawable(Rdrawableic_launcher))getBitmap();

Matrix matrix = new Matrix();

matrixsetRotate(90);

Bitmap new = Bitmapcreate(bitmap,0,bitmapgetWidth(),0,bitmapgetHeight(),matrix);

imagesetBitmapResource(bitmap);

如果程序不断获取新的bitmap重新设置给ImageView的话,那么bitmap在不断旋转,又不回收内存,浪费大大哒,不推荐使用。

可以通过在xml中设置ImageView的属性来实现,如

android:rotation="90" //写死固定方向没问题

,这样。

动态调用如下:

ivsetPivotX(imagegetWidth()/2);

ivsetPivotY(imagegetHeight()/2);//支点在中心

ivsetRotation(90);

可以使用ImageView配合属性动画实现,如

ivanimate()rotation(90); //会好看一下,只有第一次加载时是这样的

或者普通动画

Animation rotateAnimation = new RotateAnimation(lastAngle, progress, AnimationRELATIVE_TO_SELF, 05f, AnimationRELATIVE_TO_SELF, 1);

rotateAnimationsetFillAfter(true);

rotateAnimationsetDuration(50);

rotateAnimationsetRepeatCount(0);

rotateAnimationsetInterpolator(new LinearInterpolator());

rotateImagestartAnimation(rotateAnimation);

Matrix matrix=new Matrix();

rotateImagesetScaleType(ScaleTypeMATRIX); //required

matrixpostRotate((float) progress, pivotX, pivotY);

ivsetImageMatrix(matrix);

通过菜单Insert-》Resource打开窗口选择Bitmap,然后点击Import按钮,选择需要导入的位图文件即可。导入后,在左侧选择资源窗口,在列表中打开Bitmap分支,选择刚加入的,点击鼠标右键,选择属性,打开窗口输入IDB_BITMAP2即可。

给你个连接自己看看>

好像是DDB格式的bitmap用GetBitmap获得参数时bmBits就是NULL的

而DIB格式可以获取到bmBits值。

你可以这样获得位图数据:

CBitmap bitmap;

bitmapLoadBitmap(IDB_BITMAP1);//位图资源ID

BITMAP bm;

bitmapGetBitmap(&bm);

BYTE data[48484];//数组大小根据你的大小定义

bitmapGetBitmapBits(48484, (LPVOID)data);//获得数据,存入数组data中,数据格式,一个像素占4个字节,R G B NULL

以上就是关于android 获取应用图标bitmap跟data数据流怎么有效全部的内容,包括:android 获取应用图标bitmap跟data数据流怎么有效、android 图片旋转、VC 先在资源里Import一张图片,ID为IDB_BITMAP2,这步怎么做,请赐教等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9324047.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存