1️⃣ 基本示例:Container + BoxDecoration
Container(
padding: const EdgeInsets.all(16),
decoration: BoxDecoration(
gradient: const LinearGradient(
colors: [Colors.blue, Colors.purple], // 渐变色
begin: Alignment.topLeft,
end: Alignment.bottomRight,
),
borderRadius: BorderRadius.circular(16), // 圆角
),
child: const Center(
child: Text(
'圆角 + 渐变背景',
style: TextStyle(color: Colors.white, fontSize: 18),
),
),
)

image.png
Ink(
decoration: BoxDecoration(
gradient: const LinearGradient(
colors: [Colors.orange, Colors.red],
begin: Alignment.topLeft,
end: Alignment.bottomRight,
),
borderRadius: BorderRadius.circular(16),
),
child: InkWell(
borderRadius: BorderRadius.circular(16),
onTap: () => print('点击了 Widget'),
child: const Padding(
padding: EdgeInsets.all(16),
child: Center(
child: Text(
'点击有水波纹',
style: TextStyle(color: Colors.white, fontSize: 18),
),
),
),
),
),

image.png
Container(
height: 50,
width: 100,
alignment: Alignment.center,
padding: const EdgeInsets.symmetric(
horizontal: 12,
vertical: 8,
),
decoration: BoxDecoration(
gradient: LinearGradient(
colors: [Colors.blue, Colors.purple],
),
borderRadius: BorderRadius.circular(12),
),
child: Text('标签', style: const TextStyle(color: Colors.white)),
),

image.png