mod: 样式修改

This commit is contained in:
guozhigq
2023-07-25 20:01:57 +08:00
parent 4e6cf1c2f2
commit f59354954d
14 changed files with 182 additions and 122 deletions

View File

@ -77,8 +77,12 @@ class _DynamicDetailPageState extends State<DynamicDetailPage> {
Get.to(
() => Scaffold(
appBar: AppBar(
title: const Text('评论详情'),
titleSpacing: 0,
centerTitle: false,
title: Text(
'评论详情',
style: Theme.of(context).textTheme.titleMedium,
),
),
body: VideoReplyReplyPanel(
oid: oid,

View File

@ -136,8 +136,10 @@ class VideoContent extends StatelessWidget {
videoItem.title,
textAlign: TextAlign.start,
style: TextStyle(
fontSize: Theme.of(context).textTheme.titleSmall!.fontSize,
fontWeight: FontWeight.w500),
fontSize: Theme.of(context).textTheme.labelMedium!.fontSize,
fontWeight: FontWeight.w500,
letterSpacing: 0.3,
),
maxLines: 2,
overflow: TextOverflow.ellipsis,
),

View File

@ -43,8 +43,12 @@ class _FollowPageState extends State<FollowPage> {
appBar: AppBar(
elevation: 0,
scrolledUnderElevation: 0,
titleSpacing: 0,
centerTitle: false,
title: const Text('我的关注'),
title: Text(
'我的关注',
style: Theme.of(context).textTheme.titleMedium,
),
),
body: RefreshIndicator(
onRefresh: () async =>

View File

@ -152,8 +152,10 @@ class VideoContent extends StatelessWidget {
videoItem.title,
textAlign: TextAlign.start,
style: TextStyle(
fontSize: Theme.of(context).textTheme.titleSmall!.fontSize,
fontWeight: FontWeight.w500),
fontSize: Theme.of(context).textTheme.labelMedium!.fontSize,
fontWeight: FontWeight.w500,
letterSpacing: 0.3,
),
maxLines: videoItem.videos > 1 ? 1 : 2,
overflow: TextOverflow.ellipsis,
),

View File

@ -29,7 +29,7 @@ class _HomePageState extends State<HomePage>
appBar: AppBar(
titleSpacing: 0,
title: Padding(
padding: const EdgeInsets.only(left: 12, right: 12, bottom: 8),
padding: const EdgeInsets.only(left: 12, right: 12, bottom: 0),
child: Stack(
children: [
const Align(
@ -79,12 +79,15 @@ class _HomePageState extends State<HomePage>
indicatorPadding: const EdgeInsets.symmetric(
horizontal: 4, vertical: 5),
indicator: BoxDecoration(
color: Theme.of(context).colorScheme.primary,
color: Theme.of(context)
.colorScheme
.primaryContainer
.withOpacity(0.8),
borderRadius:
const BorderRadius.all(Radius.circular(20)),
),
indicatorSize: TabBarIndicatorSize.tab,
labelColor: Theme.of(context).colorScheme.onPrimary,
labelColor: Theme.of(context).colorScheme.primary,
labelStyle: const TextStyle(fontSize: 13),
dividerColor: Colors.transparent,
unselectedLabelColor:

View File

@ -26,8 +26,12 @@ class _LaterPageState extends State<LaterPage> {
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('稍后再看'),
titleSpacing: 0,
centerTitle: false,
title: Text(
'稍后再看',
style: Theme.of(context).textTheme.titleMedium,
),
),
body: CustomScrollView(
controller: _laterController.scrollController,

View File

@ -24,10 +24,10 @@ class LiveCardV extends StatelessWidget {
String heroTag = Utils.makeHeroTag(liveItem.roomId);
return Card(
elevation: 0,
// clipBehavior: Clip.hardEdge,
// shape: RoundedRectangleBorder(
// borderRadius: StyleString.mdRadius,
// ),
clipBehavior: Clip.hardEdge,
shape: RoundedRectangleBorder(
borderRadius: StyleString.mdRadius,
),
margin: EdgeInsets.zero,
child: GestureDetector(
onLongPress: () {
@ -114,7 +114,7 @@ class LiveContent extends StatelessWidget {
textAlign: TextAlign.start,
style: TextStyle(
fontSize: Theme.of(context).textTheme.labelMedium!.fontSize,
fontWeight: FontWeight.w600,
fontWeight: FontWeight.w500,
letterSpacing: 0.3,
),
maxLines: 2,

View File

@ -157,7 +157,7 @@ class _VideoInfoState extends State<VideoInfo> with TickerProviderStateMixin {
.titleMedium!
.copyWith(
letterSpacing: 0.5,
fontWeight: FontWeight.bold),
fontWeight: FontWeight.w500),
maxLines: 2,
overflow: TextOverflow.ellipsis,
),
@ -238,10 +238,11 @@ class _VideoInfoState extends State<VideoInfo> with TickerProviderStateMixin {
seasonPanel(widget.videoDetail!.ugcSeason!,
widget.videoDetail!.pages!.first.cid, sheetHeight)
],
Divider(
height: 26,
color: Theme.of(context).dividerColor.withOpacity(0.1),
),
// Divider(
// height: 26,
// color: Theme.of(context).dividerColor.withOpacity(0.1),
// ),
const SizedBox(height: 20),
GestureDetector(
onTap: () {
int mid = !widget.loadingStatus
@ -257,6 +258,7 @@ class _VideoInfoState extends State<VideoInfo> with TickerProviderStateMixin {
},
child: Row(
children: [
const SizedBox(width: 5),
NetworkImgLayer(
type: 'avatar',
src: !widget.loadingStatus
@ -293,17 +295,48 @@ class _VideoInfoState extends State<VideoInfo> with TickerProviderStateMixin {
opacity: widget.loadingStatus ? 0 : 1,
duration: const Duration(milliseconds: 150),
child: SizedBox(
height: 34,
height: 32,
child: Obx(
() => videoIntroController.followStatus.isNotEmpty
? ElevatedButton(
? TextButton(
onPressed: () => videoIntroController
.actionRelationMod(),
child: Text(videoIntroController
.followStatus['attribute'] ==
0
? '关注'
: '已关注'),
style: TextButton.styleFrom(
padding: const EdgeInsets.only(
left: 8, right: 8),
foregroundColor:
videoIntroController.followStatus[
'attribute'] !=
0
? Theme.of(context)
.colorScheme
.outline
: Theme.of(context)
.colorScheme
.onPrimary,
backgroundColor:
videoIntroController.followStatus[
'attribute'] !=
0
? Theme.of(context)
.colorScheme
.onInverseSurface
: Theme.of(context)
.colorScheme
.primary, // 设置按钮背景色
),
child: Text(
videoIntroController.followStatus[
'attribute'] !=
0
? '已关注'
: '关注',
style: TextStyle(
fontSize: Theme.of(context)
.textTheme
.labelMedium!
.fontSize),
),
)
: ElevatedButton(
onPressed: () => videoIntroController
@ -313,14 +346,15 @@ class _VideoInfoState extends State<VideoInfo> with TickerProviderStateMixin {
),
),
),
const SizedBox(width: 4)
],
),
),
const SizedBox(height: 8),
Divider(
height: 12,
color: Theme.of(context).dividerColor.withOpacity(0.1),
),
const SizedBox(height: 12),
// Divider(
// height: 12,
// color: Theme.of(context).dividerColor.withOpacity(0.1),
// ),
],
)
: const SizedBox(

View File

@ -28,7 +28,7 @@ class IntroDetail extends StatelessWidget {
child: Column(
children: [
Container(
height: 25,
height: 40,
padding: const EdgeInsets.only(bottom: 2),
child: Center(
child: Container(
@ -51,7 +51,7 @@ class IntroDetail extends StatelessWidget {
Text(
videoDetail!.title,
style: Theme.of(context).textTheme.titleMedium!.copyWith(
letterSpacing: 0.5, fontWeight: FontWeight.bold),
letterSpacing: 0.5, fontWeight: FontWeight.w500),
),
const SizedBox(height: 10),
Row(

View File

@ -75,21 +75,28 @@ Widget seasonPanel(UgcSeason ugcSeason, cid, sheetHeight) {
),
),
child: Padding(
padding: const EdgeInsets.fromLTRB(10, 10, 10, 10),
padding: const EdgeInsets.fromLTRB(8, 12, 8, 12),
child: Row(
children: [
Expanded(
child: Text(
'合集:${ugcSeason.title!}',
style: Theme.of(context).textTheme.labelMedium,
overflow: TextOverflow.ellipsis,
),
),
const SizedBox(width: 15),
Image.asset(
'assets/images/live.gif',
color: Theme.of(context).colorScheme.primary,
height: 11,
),
const SizedBox(width: 4),
Text(
'${currentIndex + 1} / ${ugcSeason.epCount}',
style: Theme.of(context).textTheme.labelSmall,
style: Theme.of(context).textTheme.labelMedium,
),
const SizedBox(width: 2),
const SizedBox(width: 6),
const Icon(
Icons.arrow_forward_ios_outlined,
size: 13,