Reason Pun

fixed: 录音播放停止按钮状态错误的问题

import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:one_poem/res/resources.dart';
import 'package:one_poem/routers/fluro_navigator.dart';
import 'package:one_poem/extension/int_extension.dart';
import 'package:one_poem/util/toast_utils.dart';
class MembershipPage extends StatefulWidget {
const MembershipPage({Key? key}) : super(key: key);
......@@ -44,10 +48,113 @@ class _MembershipPageState extends State<MembershipPage>
),
),
),
const Text(
"这是会员页面",
style: TextStyle(
color: Colors.white,
const Spacer(),
Container(
margin:
EdgeInsets.symmetric(vertical: 60.px, horizontal: 20.px),
height: MediaQuery.of(context).size.height / 2,
width: double.infinity,
decoration: BoxDecoration(
color: Colors.grey.shade200.withOpacity(0.1),
border: Border.all(
color: Colors.grey.shade50,
width: 0.5,
), // 边色与边宽度
),
child: ClipRect(
child: BackdropFilter(
filter: ImageFilter.blur(
sigmaX: 10.0,
sigmaY: 10.0,
),
child: Container(
decoration: BoxDecoration(
color: Colors.grey.shade200.withOpacity(0.1),
),
child: Padding(
padding: EdgeInsets.all(10.px),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text(
"成为一言会员,将可以享受会员专属临境体验。",
style: TextStyle(
fontSize: 18.px,
color: Colors.white,
),
),
Gaps.vGap24,
// TODO 如果会员则显示会员详情
Expanded(
child: ListView.builder(
itemExtent: 48.0,
itemBuilder: (_, index) {
return _buildItem(index);
},
itemCount: 5,
),
),
Gaps.vGap24,
Text(
"遇到任何问题,请在微信中关注“一言临境”公众号",
style: TextStyle(
fontSize: 14.px,
color: Colors.white,
),
),
Gaps.vGap10,
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
TextButton(
onPressed: () {},
child: Text(
"服务协议",
style: TextStyle(
fontSize: 14.px,
color: Colors.white,
),
),
),
Container(
width: 0.6,
height: 15.0,
color: Colours.line,
),
TextButton(
onPressed: () {},
child: Text(
"隐私政策",
style: TextStyle(
fontSize: 14.px,
color: Colors.white,
),
),
),
Container(
width: 0.6,
height: 15.0,
color: Colours.line,
),
TextButton(
onPressed: () {},
child: Text(
"恢复购买",
style: TextStyle(
fontSize: 14.px,
color: Colors.white,
),
),
),
],
),
],
),
),
),
),
),
),
],
......@@ -57,6 +164,45 @@ class _MembershipPageState extends State<MembershipPage>
);
}
Widget _buildItem(int index) {
return Flex(
direction: Axis.horizontal,
children: [
const Text(
"一个月",
style: TextStyle(
color: Colors.white,
fontSize: 15.0,
),
),
Gaps.hGap10,
const Expanded(
flex: 1,
child: Align(
alignment: Alignment.centerRight,
child: Text(
"99¥",
style: TextStyle(
color: Colors.white,
fontSize: 15.0,
),
),
),
),
Gaps.hGap32,
ElevatedButton(
child: const Text(
"开通",
style: TextStyle(color: Colors.white, fontSize: 15.0),
),
onPressed: () {
Toast.show("开通啦!");
},
),
],
);
}
@override
void didChangeAppLifecycleState(AppLifecycleState state) {}
......
......@@ -318,7 +318,9 @@ class _AudioToolBarState extends State<AudioToolBar> {
void stopPlayer() {
if (_mPlayerIsInited && _mPlaybackReady && _mRecorder!.isStopped) {
_mPlayer!.stopPlayer().then((value) {
setState(() {});
setState(() {
_mPlayerIsPlaying = false;
});
});
}
}
......