1bf69048f3
update ios project
170 lines
6.3 KiB
Dart
170 lines
6.3 KiB
Dart
import 'package:flutter/cupertino.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
import 'package:provider/provider.dart';
|
|
import 'package:uuvpn/constant/app_colors.dart';
|
|
import 'package:uuvpn/constant/app_strings.dart';
|
|
import 'package:uuvpn/models/app_model.dart';
|
|
import 'package:uuvpn/models/user_model.dart';
|
|
import 'package:uuvpn/models/user_subscribe_model.dart';
|
|
import 'package:uuvpn/utils/l10n.dart';
|
|
import 'package:uuvpn/utils/navigator_util.dart';
|
|
|
|
class LogoBar extends StatelessWidget {
|
|
const LogoBar({
|
|
Key? key,
|
|
required this.isOn,
|
|
}) : super(key: key);
|
|
|
|
final bool isOn;
|
|
|
|
void onLogoutTap(context, _userModel) {
|
|
showDialog(
|
|
context: context,
|
|
builder: (BuildContext context) {
|
|
return CupertinoAlertDialog(
|
|
title: Text(context.l10n.alertsss),
|
|
content: Column(
|
|
children: <Widget>[
|
|
SizedBox(
|
|
height: 10,
|
|
),
|
|
Align(
|
|
child: Text(
|
|
context.l10n.wanttoexit,
|
|
style: TextStyle(fontSize: 18),
|
|
),
|
|
alignment: Alignment(0, 0),
|
|
),
|
|
],
|
|
),
|
|
actions: <Widget>[
|
|
CupertinoDialogAction(
|
|
child: Text(context.l10n.cancelss),
|
|
onPressed: () {
|
|
Navigator.pop(context);
|
|
//print("取消");
|
|
},
|
|
),
|
|
CupertinoDialogAction(
|
|
child: Text(
|
|
context.l10n.exitout,
|
|
style: TextStyle(color: Colors.red),
|
|
),
|
|
onPressed: () {
|
|
//print("确定");
|
|
_userModel.logout();
|
|
NavigatorUtil.goLogin(context);
|
|
},
|
|
),
|
|
],
|
|
);
|
|
});
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
AppModel appModel = Provider.of<AppModel>(context);
|
|
UserModel userModel = Provider.of<UserModel>(context);
|
|
UserSubscribeModel userSubscribeModel =
|
|
Provider.of<UserSubscribeModel>(context);
|
|
|
|
return Container(
|
|
margin: EdgeInsets.only(top: ScreenUtil().setWidth(60)),
|
|
child: Row(
|
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
crossAxisAlignment: CrossAxisAlignment.center,
|
|
children: [
|
|
Text(
|
|
AppStrings.appName,
|
|
style: TextStyle(
|
|
fontWeight: FontWeight.w900,
|
|
fontSize: ScreenUtil().setSp(60),
|
|
color: isOn ? AppColors.whiteColor : Colors.white,
|
|
),
|
|
),
|
|
Row(
|
|
children: [
|
|
// Material(
|
|
// color: isOn ? const Color(0x66000000) : AppColors.darkSurfaceColor,
|
|
// borderRadius: BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
// child: InkWell(
|
|
// borderRadius: BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
// onTap: () => NavigatorUtil.goToCrisp(context),
|
|
// child: Container(
|
|
// padding: EdgeInsets.symmetric(
|
|
// vertical: ScreenUtil().setWidth(10), horizontal: ScreenUtil().setWidth(30)),
|
|
// child: Text(
|
|
// "客服",
|
|
// style:
|
|
// TextStyle(fontSize: ScreenUtil().setSp(36), color: Colors.white, fontWeight: FontWeight.w500),
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// ),
|
|
// Padding(padding: EdgeInsets.only(left: ScreenUtil().setWidth(15))),
|
|
Material(
|
|
color:
|
|
isOn ? const Color(0x66000000) : AppColors.darkSurfaceColor,
|
|
borderRadius: BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
child: InkWell(
|
|
borderRadius:
|
|
BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
onTap: () => appModel.jumpToPage(3),
|
|
child: Container(
|
|
padding: EdgeInsets.symmetric(
|
|
vertical: ScreenUtil().setWidth(10),
|
|
horizontal: ScreenUtil().setWidth(30)),
|
|
child: Text(
|
|
userSubscribeModel?.userSubscribeEntity?.email ??
|
|
context.l10n.welcome,
|
|
style: TextStyle(
|
|
fontSize: ScreenUtil().setSp(36),
|
|
color: Colors.white,
|
|
fontWeight: FontWeight.w500),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
userModel.isLogin
|
|
? Padding(
|
|
padding: EdgeInsets.only(left: ScreenUtil().setWidth(15)))
|
|
: Container(),
|
|
userModel.isLogin
|
|
? Material(
|
|
color: isOn
|
|
? const Color(0x66000000)
|
|
: AppColors.darkSurfaceColor,
|
|
borderRadius:
|
|
BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
child: InkWell(
|
|
borderRadius:
|
|
BorderRadius.circular(ScreenUtil().setWidth(30)),
|
|
onTap: () {
|
|
onLogoutTap(context, userModel);
|
|
// userModel.logout();
|
|
// NavigatorUtil.goLogin(context);
|
|
},
|
|
child: Container(
|
|
padding: EdgeInsets.symmetric(
|
|
vertical: ScreenUtil().setWidth(10),
|
|
horizontal: ScreenUtil().setWidth(30)),
|
|
child: Text(
|
|
context.l10n.logout,
|
|
style: TextStyle(
|
|
fontSize: ScreenUtil().setSp(36),
|
|
color: Colors.white,
|
|
fontWeight: FontWeight.w500),
|
|
),
|
|
),
|
|
),
|
|
)
|
|
: Container(),
|
|
],
|
|
)
|
|
],
|
|
),
|
|
);
|
|
}
|
|
}
|