如何在android中的imageview中设置图像?

时间:2012-11-22 13:40:08

标签: android image imageview

我想在imageview中显示图片,因此我在drawable中创建了一个文件夹 - res并将我的图像放在那里。像apple.png这样的东西。然后我使用这段代码:

ImageView iv= (ImageView)findViewById(R.id.img_selected_image);
String path = getApplication().getFilesDir().getAbsolutePath();
InputStream is = new FileInputStream(path + "/apple.png");
Drawable icon = new BitmapDrawable(is);
Log.i("Fnord", "width="+icon.getIntrinsicWidth()+
     " height="+icon.getIntrinsicHeight());
iv.setImageDrawable(icon);

但是当我运行它时,它表示apple.png中的data/data/package-name/files名称没有任何图像。我想我把我的形象放在了不适当的地方。我应该把我的形象放在哪里?

10 个答案:

答案 0 :(得分:58)

你可以直接在你的setimage中给出iv.setImageResource(R.drawable.apple);的图像名称。

答案 1 :(得分:7)

使用以下代码

    iv.setImageResource(getResources().getIdentifier("apple", "drawable", getPackageName()));

答案 2 :(得分:5)

您可以在XML布局中设置:

,而不是通过活动类中的代码设置可绘制资源

代码如下:

<ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/apple" />

答案 3 :(得分:3)

// take variable of imageview

private ImageView mImageView;

//bind imageview with your xml's id

mImageView = (ImageView)findViewById(R.id.mImageView);

//set resource for imageview

mImageView.setImageResource(R.drawable.your_image_name);

答案 4 :(得分:2)

您放入res / drawable的图片由Android处理。您无需按照自己的方式获取图像。 在您的情况下,您只需致电iv.setImageRessource(R.drawable.apple)

只是获取图像(而不是直接将其添加到ImageView),您可以调用Context.getRessources().getDrawable(R.drawable.apple)来获取图像

答案 5 :(得分:1)

        ImageView iv= (ImageView)findViewById(R.id.img_selected_image);
        public static int getDrawable(Context context, String name)//method to get id
        {
         Assert.assertNotNull(context);
         Assert.assertNotNull(name);
        return context.getResources().getIdentifier(name,    //return id
            "your drawable", context.getPackageName());
        }
        image.setImageResource(int Id);//set id using this method

答案 6 :(得分:1)

如果您从Java Class

创建了ImageView
ImageView img = new ImageView(this);

//Here we are setting the image in image view
img.setImageResource(R.drawable.my_image);

答案 7 :(得分:1)

  

如果你想设置一个位图对象到图像视图这里是简单的两行`

  Button1.Text = char.ConvertFromUtf32(0x2193);
  Button2.Text = char.ConvertFromUtf32(0x2191);

答案 8 :(得分:0)

1&GT;您可以从布局本身添加图像:

<ImageView
                android:id="@+id/iv_your_image"
                android:layout_width="wrap_content"
                android:layout_height="25dp"
                android:background="@mipmap/your_image"
                android:padding="2dp" />

2 - ;以编程方式在java类中:

ImageView ivYouImage= (ImageView)findViewById(R.id.iv_your_image);
        ivYouImage.setImageResource(R.mipmap.ic_changeImage);
片段的

OR

View rowView= inflater.inflate(R.layout.your_layout, null, true);

ImageView ivYouImage= (ImageView) rowView.findViewById(R.id.iv_your_image);
        ivYouImage.setImageResource(R.mipmap.ic_changeImage);

答案 9 :(得分:0)

在imageview中设置图像

imageView.setImageResource(R.drawable.myImage);