Files
flutter_common/lib/upload_video/video_batch_upload_widgets.dart
T

82 lines
1.8 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'video_batch_upload_task.dart';
class VideoBatchUploadBackButton extends StatelessWidget {
const VideoBatchUploadBackButton({
super.key,
required this.onTap,
this.iconSize = 19,
});
final VoidCallback onTap;
final double iconSize;
@override
Widget build(BuildContext context) {
return IconButton(
onPressed: onTap,
icon: Icon(
Icons.arrow_back_ios_new,
color: Colors.black,
size: iconSize,
),
);
}
}
class VideoBatchUploadIconButton extends StatelessWidget {
const VideoBatchUploadIconButton({
super.key,
required this.onTap,
this.assetType = VideoBatchUploadAssetType.video,
this.iconSize,
this.rightPadding,
});
final VoidCallback onTap;
final VideoBatchUploadAssetType assetType;
final double? iconSize;
final double? rightPadding;
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: onTap,
child: Padding(
padding: EdgeInsets.only(right: rightPadding ?? 30.w),
child: Icon(
assetType == VideoBatchUploadAssetType.video
? Icons.video_call_outlined
: Icons.add_photo_alternate_outlined,
size: iconSize ?? 50.sp,
color: const Color(0xFF1D1D21),
),
),
);
}
}
class VideoBatchUploadEmptyPlaceholder extends StatelessWidget {
const VideoBatchUploadEmptyPlaceholder({
super.key,
this.title = '这个视频库里还没有视频',
});
final String title;
@override
Widget build(BuildContext context) {
return Center(
child: Text(
title,
style: TextStyle(
fontSize: 28.sp,
color: const Color(0xFF8D90A0),
),
),
);
}
}