#flutter #containers #gradient #linear-gradients
Вопрос:
LinearGradient(
//tileMode: TileMode.clamp,
colors: [
kRecordButtonColor.withOpacity(0.4),
kRecordButtonColor,
kRecordButtonColor,
kRecordButtonColor.withOpacity(0.4),
],
stops: const [
0,
0.2,
0.8,
1,
],
),
Как вы можете видеть, этот код помогает мне получить градиенты только по 2 краям, мне это нужно по всем 4 краям.
Комментарии:
1. Может быть, вы можете использовать RadialGradient?
2. Пробовал, не дает желаемого результата. Это не простой контейнер. Поскольку он завернут в чернильницу, я думаю, это немного сложнее.
Ответ №1:
Попробуйте это вместо вашего контейнера:
Stack(
alignment: Alignment.center,
children: [
Container(
margin: EdgeInsets.all(16.0),
width: 55,
height: 55,
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.circular(10),
gradient: LinearGradient(
colors: [
Colors.red.withOpacity(0.5),
Colors.red,
Colors.red,
Colors.red.withOpacity(0.5),
],
stops: const [
0,
0.2,
0.8,
1,
],
)),
),
Container(
margin: EdgeInsets.all(16.0),
width: 55,
height: 55,
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.circular(10),
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Colors.white.withOpacity(0.5),
Colors.white.withOpacity(0.0),
Colors.white.withOpacity(0.0),
Colors.white.withOpacity(0.5),
],
stops: const [
0,
0.2,
0.8,
1,
],
)),
),
],
),
Комментарии:
1. Я ценю ваши усилия, но это действительно уродливый хак. Я пробовал это в течение некоторого времени, корректируя несколько значений, но это все еще не покрывает углы. В основном, когда вы увеличиваете радиус угла, углы выглядят темнее, чем край.