|
|
@ -25,19 +25,20 @@ class MeetingDetailsView extends GetView<MeetingDetailsController> { |
|
|
|
|
|
|
|
|
return PopScope( |
|
|
return PopScope( |
|
|
onPopInvokedWithResult: controller.popInvokedWithResult, |
|
|
onPopInvokedWithResult: controller.popInvokedWithResult, |
|
|
child: Obx( |
|
|
child: Scaffold( |
|
|
() => Scaffold( |
|
|
|
|
|
backgroundColor: isDarkMode ? Colors.black : Colors.grey[50], |
|
|
backgroundColor: isDarkMode ? Colors.black : Colors.grey[50], |
|
|
appBar: _buildAppBar(context, isDarkMode), |
|
|
appBar: _buildAppBar(context, isDarkMode), |
|
|
body: _buildBody(isDarkMode), |
|
|
body: _buildBody(isDarkMode), |
|
|
), |
|
|
), |
|
|
), |
|
|
|
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 构建应用栏 |
|
|
// 构建应用栏 |
|
|
PreferredSizeWidget _buildAppBar(BuildContext context, bool isDarkMode) { |
|
|
PreferredSizeWidget _buildAppBar(BuildContext context, bool isDarkMode) { |
|
|
return AppBar( |
|
|
return PreferredSize( |
|
|
|
|
|
preferredSize: const Size.fromHeight(kToolbarHeight), |
|
|
|
|
|
child: Obx( |
|
|
|
|
|
() => AppBar( |
|
|
backgroundColor: |
|
|
backgroundColor: |
|
|
controller.isTop.value ? Colors.grey[50] : Colors.grey[200], |
|
|
controller.isTop.value ? Colors.grey[50] : Colors.grey[200], |
|
|
surfaceTintColor: Colors.transparent, |
|
|
surfaceTintColor: Colors.transparent, |
|
|
@ -69,7 +70,8 @@ class MeetingDetailsView extends GetView<MeetingDetailsController> { |
|
|
), |
|
|
), |
|
|
title: Obx( |
|
|
title: Obx( |
|
|
() => Opacity( |
|
|
() => Opacity( |
|
|
opacity: (1 - (controller.dragOffset.value / 100.w)).clamp(0.0, 1.0), |
|
|
opacity: |
|
|
|
|
|
(1 - (controller.dragOffset.value / 100.w)).clamp(0.0, 1.0), |
|
|
child: Container( |
|
|
child: Container( |
|
|
width: 170.w, |
|
|
width: 170.w, |
|
|
padding: EdgeInsets.symmetric(horizontal: 2.w, vertical: 3.w), |
|
|
padding: EdgeInsets.symmetric(horizontal: 2.w, vertical: 3.w), |
|
|
@ -104,10 +106,11 @@ class MeetingDetailsView extends GetView<MeetingDetailsController> { |
|
|
width: 26.w, |
|
|
width: 26.w, |
|
|
height: 26.w, |
|
|
height: 26.w, |
|
|
child: CircularProgressIndicator( |
|
|
child: CircularProgressIndicator( |
|
|
value: controller.downloadProgress.value, |
|
|
value: |
|
|
|
|
|
controller.downloadProgress.value, |
|
|
valueColor: |
|
|
valueColor: |
|
|
const AlwaysStoppedAnimation<Color>( |
|
|
const AlwaysStoppedAnimation< |
|
|
Colors.red), |
|
|
Color>(Colors.red), |
|
|
strokeWidth: 2.w, |
|
|
strokeWidth: 2.w, |
|
|
), |
|
|
), |
|
|
), |
|
|
), |
|
|
@ -238,6 +241,8 @@ class MeetingDetailsView extends GetView<MeetingDetailsController> { |
|
|
}, |
|
|
}, |
|
|
), |
|
|
), |
|
|
], |
|
|
], |
|
|
|
|
|
), |
|
|
|
|
|
), |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|