Как я могу изменить изображение ImageView? [дубликат]



этот вопрос уже есть ответ здесь:



Я только начал изучать android. И я не знаю, как я могу изменить имидж ImageView? т. е. у него есть некоторое изображение, которое было установлено в макете, но я хочу изменить это изображение с помощью кодирования, как я должен это сделать ?



вот xml-файл



<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#cc8181"
>

<ImageView
android:id="@+id/image"
android:layout_width="50dip"
android:layout_height="fill_parent"
android:src="@drawable/icon"
android:layout_marginLeft="3dip"
android:scaleType="center"/>




спасибо за ответ.

435   4  

4 ответов:

Если вы создали imageview с помощью xml-файла, то выполните следующие действия.

Решение 1:

Шаг 1: Создайте XML-файл

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="#cc8181"
  >

  <ImageView
      android:id="@+id/image"
      android:layout_width="50dip"
      android:layout_height="fill_parent" 
      android:src="@drawable/icon"
      android:layout_marginLeft="3dip"
      android:scaleType="center"/>

</LinearLayout>

Шаг 2: Создайте действие

ImageView img= (ImageView) findViewById(R.id.image);
img.setImageResource(R.drawable.my_image);

решение 2:

Если вы создали imageview из класса Java

ImageView img = new ImageView(this);
img.setImageResource(R.drawable.my_image);

посмотреть ImageView API. Есть несколько setImage* методы. Какой из них использовать, зависит от изображения, которое вы предоставляете. Если у вас есть изображение в качестве ресурса (например, файл res/drawable/my_image.png)

ImageView img = new ImageView(this);  // or (ImageView) findViewById(R.id.myImageView);
img.setImageResource(R.drawable.my_image);

просто чтобы пойти немного дальше в этом вопросе, вы также можете установить растровое изображение напрямую, например:

ImageView imageView = new ImageView(this);  
Bitmap bImage = BitmapFactory.decodeResource(this.getResources(), R.drawable.my_image);
imageView.setImageBitmap(bImage);

конечно, этот метод полезен только в том случае, если вам нужно изменить изображение.

if (android.os.Build.VERSION.SDK_INT >= 21) {
            storeViewHolder.storeNameTextView.setImageDrawable(context.getResources().getDrawable(array[position], context.getTheme()));
} else {
            storeViewHolder.storeNameTextView.setImageDrawable(context.getResources().getDrawable(array[position]));
}

Comments

    Ничего не найдено.