При программном добавлении ImageView представление не подчиняется ограничениям макета.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 При программном добавлении ImageView представление не подчиняется ограничениям макета.

Сообщение Anonymous »

Я разрабатываю страницу приложения для Android. Эта страница будет загружать изображения по URL-адресу. Однако загруженные изображения не подчиняются ограничениям макета. В результате появилось неожиданное пустое пространство. Почему и как это решить?
Вот мой код:

Код: Выделить всё

package com.example.emptyactivityjava;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import com.squareup.picasso.Picasso;

public class for_dynamic_add_img_and_desc extends AppCompatActivity {

LinearLayout LinearLayout_content;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_for_dynamic_add_img_and_desc);
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
return insets;
});

LinearLayout_content = findViewById(R.id.LinearLayout_content);

String[] imgs_url = {
"https://amateurphotographer.com/wp-content/uploads/sites/7/2023/04/Paulina-Stopka-vertical-landscapes-Tryfan-Eryri-National-Park-Tatra-Mountains.jpg",
"https://images.pexels.com/photos/247599/pexels-photo-247599.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
"https://samuelearp.com/wp-content/uploads/2023/10/IMG_1512-1536x1273.jpeg",
};

String[] descs = {
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
"cccccccccccccccccccccccccccccccccccccccccccccccc"
};

for (int i = 0; i < 3; i++) {
View view = LayoutInflater.from(for_dynamic_add_img_and_desc.this).inflate(R.layout.item_template, null);
Picasso.get().load(imgs_url[i]).into((ImageView) view.findViewById(R.id.img));
((TextView) (view.findViewById(R.id.desc))).setText(descs[i]);
LinearLayout_content.addView(view);
}
}
}
item_template.xml: Результат содержит неожиданное пустое пространство. Как мне решить эту проблему?
Изображение


Подробнее здесь: https://stackoverflow.com/questions/786 ... constraint
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»