Переполнение ведущего изображения в ListTile - PullRequest
2 голосов
/ 12 апреля 2019

У меня есть ListView с ListTile.Каждый ListTile имеет title с Text, subtitle с Text и leading с Image.

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

Как я могу убедиться, что изображение остается в границах?

РЕДАКТИРОВАТЬ:

Я бы не хотел давать изображениефиксированный размер, но пусть он подстраивается под высоту фрагмента списка, заданного внутренней высотой заголовка + подзаголовка.

Ответы [ 2 ]

1 голос
/ 12 апреля 2019

Сделайте это:

leading: SizedBox(
  height: 100.0,
  width: 100.0, // fixed width and height
  child: Image.asset(...)
)
0 голосов
/ 12 апреля 2019

enter image description here

Вы должны использовать CircleAvatar как leading в вашем ListTile. Он также имеет свойство radius, которое вы можете изменить, если хотите.

leading: CircleAvatar(
  backgroundImage: AssetImage("..."), // no matter how big it is, it won't overflow
),

enter image description here

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

leading: ConstrainedBox(
  constraints: BoxConstraints(
    minWidth: 44,
    minHeight: 44,
    maxWidth: 64,
    maxHeight: 64,
  ),
  child: Image.asset(profileImage, fit: BoxFit.cover),
),
...