簡體   English   中英

如何在android中的imageview中設置圖像?

[英]How to set image in imageview in android?

我想在 imageview 中顯示一個圖像,所以我創建了一個文件夾 - 在res drawable並將我的圖像放在那里。 類似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);

但是當我運行它時,它說data/data/package-name/files沒有apple.png名稱的任何圖像。 我想我把我的形象放在了不合適的地方。 我應該把我的形象放在哪里?

你可以直接在你的setimage中給出圖像名稱iv.setImageResource(R.drawable.apple); 那應該是它。

使用以下代碼,

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

您可以在XML布局中設置:而不是通過活動類中的代碼設置可繪制資源:

代碼如下:

<ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/apple" />
// 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);

放入res / drawable的圖像由Android處理。 您無需按照自己的方式獲取圖像。 在你的情況下你可以簡單地調用iv.setImageRessource(R.drawable.apple)

要獲取圖像(而不是直接將其添加到ImageView),可以調用Context.getRessources().getDrawable(R.drawable.apple)來獲取圖像

        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

如果您從Java類創建了ImageView

ImageView img = new ImageView(this);

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

如果你想設置一個位圖對象到圖像視圖這里是簡單的兩行`

Bitmap bitmap=BitmapFactory.decodeResource(getResources(),R.drawable.sample_drawable_image);
image.setImageBitmap(bitmap);

1>您可以從布局本身添加圖像:

<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);

片段

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);

在imageview中設置圖像

imageView.setImageResource(R.drawable.myImage);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM