Android,想获取这个对象里面的Drawable应该使用那个方法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android,想获取这个对象里面的Drawable应该使用那个方法?相关的知识,希望对你有一定的参考价值。

参考技术A

Drawable drawable=getResource().getDrawable(R.drawable.xxx);

这个例子来源于android学习手册,360手机助手中可以下载,里面有108个android例子,源码文档都可在里面看,下面是截图


方式一:

已将图片保存到drawable目录下,通过图片id获得Drawable或者Bitmap,此方式最常用。(若只知道图片的名称,还可以通过图片的名称获得图片的id)

(1)通过图片id获得Drawable

Drawable drawable=getResource().getDrawable(R.drawable.xxx);

(2)通过图片id获得Bitmap

Resource res=gerResource();

Bitmap bitmap=BitmapFactory.decodeResource(res, id);

(3)通过图片的名称获得图片的id(两种方法)

int id =res.getIdentifier(name, defType, defPackage); //name:图片的名,defType:资源类型(drawable,string。。。),defPackage:工程的包名

Drawable drawable=getResource().getDrawable(id);

方式二:

已将图片保存到assest目录下,知道图片的名称,通过inputstream获得图片Drawabl

或者 Bitmap

AssetManager asm=getAssetMg();

InputStream is=asm.open(name);//name:图片的名称

(1)获得Drawable

Drawable da = Drawable.createFromStream(is, null);

(2)获得Bitmap

Bitmap bitmap=BitmapFactory.decodeStream(is);

方式三: 图片保存在sdcard,通过图片的路径h

/图片路径

String imgFilePath = Environment.getExternalStorageDirectory().toString()

+ “/DCIM/device.png”;

本回答被提问者和网友采纳
参考技术B getResources().getDrawable(R.id.***)

请问下Android里怎么获取桌面或系统里的某个Activity对象?

我要接收一个系统广播消息,这个广播消息是在XML里注册的,接收到这个系统广播消息要做处理,但这个处理需要一个Activity对象,所以我想获取系统的某个运行的Activity.请问下应该怎么获取?

在minifest中注册该Activity时加上一个<intent-fiter> <action....../></intent-filter> action中注明你的广播就OK了。 参考技术A 写个类继承Activity不就好了

以上是关于Android,想获取这个对象里面的Drawable应该使用那个方法?的主要内容,如果未能解决你的问题,请参考以下文章

Android 如何获取当前Activity实例对象?

Android 如何获取当前Activity实例对象?

Android 如何获取当前Activity实例对象?

android获取drawable里面的图片的id和名字的方法

Android随记

Android getResources的作用和需要注意点