初始化
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
/// ACG「免费」角标:整本无任何权限(hasPermission == false)且该集落在前 N 集免费区间时展示。
|
||||
/// 默认行内胶囊(详情页/子集抽屉/有声列表);[isCorner] 为卡片左上角贴边样式(选集面板小方块)。
|
||||
class FreeBadge extends StatelessWidget {
|
||||
final bool isCorner;
|
||||
|
||||
const FreeBadge({super.key, this.isCorner = false});
|
||||
|
||||
static const _bgColor = Color(0xff64CBC2);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (isCorner) {
|
||||
return Container(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 5, vertical: 1),
|
||||
decoration: const BoxDecoration(
|
||||
color: _bgColor,
|
||||
borderRadius: BorderRadius.only(
|
||||
topLeft: Radius.circular(7),
|
||||
bottomRight: Radius.circular(7),
|
||||
),
|
||||
),
|
||||
child: const Text(
|
||||
'免费',
|
||||
style: TextStyle(color: Colors.white, fontSize: 9, height: 1.2, fontWeight: FontWeight.w400),
|
||||
),
|
||||
);
|
||||
}
|
||||
return Container(
|
||||
height: 20,
|
||||
alignment: Alignment.center,
|
||||
padding: const EdgeInsets.symmetric(horizontal: 6),
|
||||
decoration: BoxDecoration(
|
||||
color: _bgColor,
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
child: const Text(
|
||||
'免费',
|
||||
style: TextStyle(color: Colors.white, fontSize: 10, fontWeight: FontWeight.w400),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user