Android的 - 如何显示从资源绘制图像? [英] Android - How to show images from resources drawable?
问题描述
我不能够证明其保存在RES /文件夹绘制的图像。
我用ImageGetter做到这一点。在code是如下:
ImageGetter imageGetter3 =新ImageGetter(){
公众可绘制getDrawable(字符串源){
INT标识= 0;
如果(source.equals(笑脸)){
ID = R.drawable.smiley;
}
可拉伸D = getResources()getDrawable(ID)。
d.setBounds(0,0,d.getIntrinsicWidth(),d.getIntrinsicHeight());
返回D组;
}
};方向+ =济弯曲BIJ lokaal+ vertrek.getNaam()+\\ n
+站遇到了济地毯VOOR德deur \\ n
+ Html.fromHtml(< IMG SRC = \\笑脸\\>中,imageGetter3,空)+Draai NAAR链接\\ n;
我看到的运行时,屏幕上是与它目标文件文本的小广场。
那么,什么是错的?图像无法读取或别的东西吗?
如何显示图像?
老实说,我用Google搜索了很多,并试图ImageGetter的其他方法为好,但他们都不似乎工作,我想这些也一样,他们没有工作:
ImageGetter imageGetter2 =新ImageGetter(){
公众可绘制getDrawable(字符串源){
可绘制D = NULL;
D = Drawable.createFromPath(源);
d.setBounds(0,0,d.getIntrinsicWidth(),d.getIntrinsicHeight());
返回D组;
}
};ImageGetter imageGetter =新ImageGetter(){
公众可绘制getDrawable(字符串源){
可绘制drawFromPath;
INT路径= Route.this.getResources()则getIdentifier(来源:绘制,com.prj56.tracingapp);
drawFromPath =(可绘制)Route.this.getResources()getDrawable(路径)。
drawFromPath.setBounds(0,0,drawFromPath.getIntrinsicWidth(),drawFromPath.getIntrinsicHeight());
返回drawFromPath;
}
};
=============================================== ==========
如果(....){
ImageView的IV1 =新ImageView的(本);
iv1.setImageResource(R.drawable.smiley);
方向+ =济弯曲BIJ lokaal+ vertrek.getNaam()+\\ n
+站遇到了济地毯VOOR德deur \\ N的;
来这里的形象!但如何做到这一点?它的方向的TextView内...
方向+ =Draai NAAR链接\\ n;}
在你的活动,你可以调用这个让你绘制资源作为可绘制对象
可绘制D = getResources()getDrawable(R.drawable.smiley)。
如果你想显示你的绘制在ImageView的,你可以这样做:
ImageView的I =新ImageView的(本);
i.setImageResource(R.drawable.smiley);
或XML文件
< ImageView的
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:SRC =@绘制/笑脸/>
I'm not able to show an image which is saved in res/drawable folder. I use ImageGetter to do this. The code is below:
ImageGetter imageGetter3 = new ImageGetter() {
public Drawable getDrawable(String source) {
int id=0;
if (source.equals("smiley")) {
id = R.drawable.smiley;
}
Drawable d = getResources().getDrawable(id);
d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
return d;
}
};
directions += "Je bent bij lokaal " + vertrek.getNaam() + "\n"
+ "Sta met je rug voor de deur\n"
+ Html.fromHtml("<img src=\"smiley\">", imageGetter3, null) + " Draai naar links\n";
What I see on the screen when running is a little square with "obj" text on it. So what is wrong? The image cannot be read or something else? How to show images?
Honestly I have Googled a lot and tried other methods of ImageGetter as well, but none of them seems to work, I tried these too, they don't work:
ImageGetter imageGetter2 = new ImageGetter() {
public Drawable getDrawable(String source) {
Drawable d = null;
d = Drawable.createFromPath(source);
d.setBounds(0,0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
return d;
}
};
ImageGetter imageGetter = new ImageGetter() {
public Drawable getDrawable(String source) {
Drawable drawFromPath;
int path = Route.this.getResources().getIdentifier(source, "drawable","com.prj56.tracingapp");
drawFromPath = (Drawable) Route.this.getResources().getDrawable(path);
drawFromPath.setBounds(0, 0, drawFromPath.getIntrinsicWidth(), drawFromPath.getIntrinsicHeight());
return drawFromPath;
}
};
========================================================= if (....) { ImageView iv1 = new ImageView(this); iv1.setImageResource(R.drawable.smiley);
directions += "Je bent bij lokaal " + vertrek.getNaam() + "\n"
+ "Sta met je rug voor de deur\n";
HERE COMES THE IMAGE! BUT HOW TO DO THIS? It's within directions textview...
directions += " Draai naar links\n";
}
In your activity you can call this to get your Drawable resource as a Drawable object
Drawable d = getResources().getDrawable(R.drawable.smiley);
If you want to show your drawable in an ImageView you can do this:
ImageView i = new ImageView(this);
i.setImageResource(R.drawable.smiley);
or in your xml file
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/smiley"/>
这篇关于Android的 - 如何显示从资源绘制图像?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!