Добавить изображение динамически - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь добавить изображение в LinearLayout (linearForImage) динамически, но это не работает.

val image = ImageView(activity)
        image.setLayoutParams(LinearLayout.LayoutParams(80, 60))

        for (i in 1..5){
            linearForImage.removeView(image)
            image.setImageResource(R.drawable.ic_add)
            linearForImage.addView(image)
        }

Я ожидаю, что получу 4 или 5 изображений в LinearLayout, но тамНет изображения установлено.

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Вы можете изменить макет следующим образом ...

Пример: (на Java)

LinearLayout linearForImage = (LinearLayout)findViewById(R.id.imageLayout);
  for(int i=1;i<6;i++)
    {
      ImageView image = new ImageView(this);
      image.setLayoutParams(new android.view.ViewGroup.LayoutParams(80,60));
      image.setMaxHeight(20);
      image.setMaxWidth(20);

      // Adds the view to the layout
       linearForImage.addView(image);
}
0 голосов
/ 12 февраля 2019

Пожалуйста, попробуйте ниже код, он работает для меня.

for (i in 1..5){
   val imageView = ImageView(this)
   imageView.layoutParams = LinearLayout.LayoutParams(80, 60) // value is in pixels
   imageView.setImageResource(R.mipmap.ic_launcher)
   linearForImage.addView(imageView)
}

Вот XML-файл.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">



    <LinearLayout
        android:id="@+id/linearForImage"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></LinearLayout>


</RelativeLayout>

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...