修改选择器样式
This commit is contained in:
@@ -224,11 +224,11 @@ Future showDateSelectionDialog(BuildContext context,
|
||||
),
|
||||
SizedBox(
|
||||
height: 240.rpx,
|
||||
child: Row(
|
||||
children: [
|
||||
Expanded(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.only(right: 30.rpx),
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 95.rpx),
|
||||
child: Row(
|
||||
children: [
|
||||
Expanded(
|
||||
child: getOnePickers(
|
||||
context,
|
||||
years,
|
||||
@@ -237,11 +237,7 @@ Future showDateSelectionDialog(BuildContext context,
|
||||
onChanged: (_) => updateDays(),
|
||||
),
|
||||
),
|
||||
),
|
||||
Expanded(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(
|
||||
horizontal: 30.rpx),
|
||||
Expanded(
|
||||
child: getOnePickers(
|
||||
context,
|
||||
months,
|
||||
@@ -250,10 +246,7 @@ Future showDateSelectionDialog(BuildContext context,
|
||||
onChanged: (_) => updateDays(),
|
||||
),
|
||||
),
|
||||
),
|
||||
Expanded(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.only(left: 30.rpx),
|
||||
Expanded(
|
||||
child: getOnePickers(
|
||||
context,
|
||||
daysSelect,
|
||||
@@ -261,8 +254,8 @@ Future showDateSelectionDialog(BuildContext context,
|
||||
unit: "日",
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
|
||||
@@ -3,25 +3,28 @@ import 'package:ef/ef.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/controller/mh_controller/message_controller.dart';
|
||||
|
||||
class LanguagePage extends StatefulWidget {
|
||||
@override
|
||||
_LanguagePageState createState() => _LanguagePageState();
|
||||
}
|
||||
import 'package:vbvs_app/controller/mh_controller/mh_language_controller.dart';
|
||||
|
||||
BoxConstraints? bodysize;
|
||||
List<String> languageList = [
|
||||
'简体中文',
|
||||
'繁體中文',
|
||||
'English',
|
||||
];
|
||||
final Map<String, String> languageMap = {
|
||||
'简体中文': 'zh_CN',
|
||||
'繁體中文': 'zh_TW',
|
||||
'English': 'en_US',
|
||||
};
|
||||
class LanguagePage extends GetView<MHLanguageController> {
|
||||
// @override
|
||||
// _LanguagePageState createState() => _LanguagePageState();
|
||||
// }
|
||||
MHLanguageController controller = Get.find();
|
||||
BoxConstraints? bodysize;
|
||||
List<String> languageList = [
|
||||
'简体中文',
|
||||
'繁體中文',
|
||||
'English',
|
||||
];
|
||||
final Map<String, String> languageMap = {
|
||||
'简体中文': 'zh_CN',
|
||||
'繁體中文': 'zh_TW',
|
||||
'English': 'en_US',
|
||||
};
|
||||
|
||||
class _LanguagePageState extends State<LanguagePage> {
|
||||
// class _LanguagePageState extends State<LanguagePage> {
|
||||
RxBool checkboxValue = false.obs;
|
||||
RxString? selectLanguage = ''.obs;
|
||||
@override
|
||||
@@ -93,14 +96,13 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
padding: EdgeInsets.zero,
|
||||
shrinkWrap: true,
|
||||
scrollDirection: Axis.vertical,
|
||||
itemCount: languageList.length,
|
||||
itemCount: controller.languageList.length,
|
||||
itemBuilder:
|
||||
(BuildContext context, int index) {
|
||||
return _buildItem(
|
||||
context, index, languageList[index]);
|
||||
return _buildItem(context, index,
|
||||
controller.languageList[index]);
|
||||
},
|
||||
),
|
||||
Container(height: bodysize!.maxHeight * 0.12)
|
||||
],
|
||||
),
|
||||
))))),
|
||||
@@ -108,7 +110,7 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
});
|
||||
}
|
||||
|
||||
Widget _buildItem(BuildContext context, int index, String text) {
|
||||
Widget _buildItem(BuildContext context, int index, MHLanguageModel model) {
|
||||
return Container(
|
||||
// width: bodysize!.maxWidth * 1,
|
||||
height: bodysize!.maxHeight * 0.055,
|
||||
@@ -116,7 +118,7 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Text(
|
||||
text,
|
||||
model.language_name ?? "",
|
||||
style: TextStyle(color: Colors.white, fontSize: 30.rpx),
|
||||
),
|
||||
Theme(
|
||||
@@ -132,15 +134,17 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
),
|
||||
child: Obx(() {
|
||||
return Checkbox(
|
||||
value: selectLanguage!.value == languageMap[text],
|
||||
value: controller.selectLanguage.value?.language_code ==
|
||||
model.language_code,
|
||||
onChanged: (newValue) async {
|
||||
if (newValue!) {
|
||||
selectLanguage!.value = languageMap[
|
||||
text]!; // Set selectLanguage to the current text value
|
||||
} else {
|
||||
selectLanguage!.value =
|
||||
''; // Clear selection if unchecked
|
||||
}
|
||||
controller.selectLanguage.value = model;
|
||||
// if (newValue!) {
|
||||
// selectLanguage!.value = languageMap[
|
||||
// text]!; // Set selectLanguage to the current text value
|
||||
// } else {
|
||||
// selectLanguage!.value =
|
||||
// ''; // Clear selection if unchecked
|
||||
// }
|
||||
},
|
||||
shape: CircleBorder(),
|
||||
side: BorderSide(
|
||||
|
||||
@@ -132,7 +132,7 @@ class _BluetoothState extends State<BluetoothPage> {
|
||||
_buildMenuButton(
|
||||
context, '详情', "/devicePeopleInfo"),
|
||||
_buildMenuButton(
|
||||
context, '人员资料', "/devicePeopleInfo"),
|
||||
context, '人员资料', "/peopleInfoPage"),
|
||||
_buildMenuButton(
|
||||
context, '房间选择', "/roomPickerPage"),
|
||||
_buildMenuButton(
|
||||
|
||||
@@ -709,7 +709,8 @@ class EditAddressPage extends GetView<AddressController>
|
||||
children: [
|
||||
InkWell(
|
||||
// onTap: () {
|
||||
// CityPicker.show(
|
||||
// CityPicker
|
||||
// .show(
|
||||
// context:
|
||||
// context,
|
||||
// cityPickerListener:
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
import 'package:ef/base/widget/flutterflow/FlutterFlowTheme.dart';
|
||||
import 'package:ef/ef.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:EasyDartModule/EasyDartModule.dart' as edm;
|
||||
import 'package:get/get.dart';
|
||||
import 'package:vbvs_app/common/color/app_uri_status.dart';
|
||||
import 'package:vbvs_app/common/util/DailyLogUtils.dart';
|
||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
||||
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||
import 'package:vbvs_app/model/api_response.dart';
|
||||
|
||||
import '../../controller/mh_controller/muser_info_controller.dart';
|
||||
|
||||
class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
final scaffoldKey = GlobalKey<ScaffoldState>();
|
||||
|
||||
// EditUserInfoPage() {
|
||||
// UserInfoController controller = Get.find();
|
||||
// controller.model.user!.tmpHead = controller.model.user!.head;
|
||||
// }
|
||||
MUserInfoController controller = Get.find();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
// UserInfoController controller = Get.find();
|
||||
MUserInfoController userInfoController = Get.find();
|
||||
return GestureDetector(
|
||||
onTap: () => FocusScope.of(context).unfocus(),
|
||||
child: Container(
|
||||
@@ -118,8 +118,25 @@ class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 44.rpx),
|
||||
ClickableContainer(
|
||||
backgroundColor: Colors.transparent,
|
||||
highlightColor: Colors.transparent,
|
||||
padding: EdgeInsets.only(top: 44.rpx, bottom: 44.rpx),
|
||||
onTap: () async {
|
||||
edm.EasyDartModule.logger
|
||||
.info("${userInfoController.model.user!}点击上传头像");
|
||||
DailyLogUtils.writeLog(
|
||||
"${userInfoController.model.user!}点击上传头像");
|
||||
ApiResponse apiResponse =
|
||||
await userInfoController.uploadImg();
|
||||
TopSlideNotification.show(
|
||||
context,
|
||||
text: apiResponse.msg!,
|
||||
textColor: apiResponse.code == HttpStatusCodes.ok
|
||||
? themeController.currentColor.sc2
|
||||
: themeController.currentColor.sc9,
|
||||
);
|
||||
},
|
||||
child: Text(
|
||||
'点击更换头像',
|
||||
style:
|
||||
@@ -127,8 +144,7 @@ class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding:
|
||||
EdgeInsets.fromLTRB(60.rpx, 122.rpx, 60.rpx, 0.rpx),
|
||||
padding: EdgeInsets.fromLTRB(60.rpx, 78.rpx, 60.rpx, 0.rpx),
|
||||
child: Container(
|
||||
width: double.infinity,
|
||||
height: 88.rpx,
|
||||
@@ -143,7 +159,7 @@ class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
alignment: Alignment(0, 0),
|
||||
child: TextField(
|
||||
obscureText: false,
|
||||
keyboardType: TextInputType.number,
|
||||
keyboardType: TextInputType.text,
|
||||
textInputAction: TextInputAction.done,
|
||||
textAlign: TextAlign.center,
|
||||
style: TextStyle(fontSize: 30.rpx, color: Colors.white),
|
||||
@@ -153,7 +169,7 @@ class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
hintText: "请输入昵称",
|
||||
hintStyle: TextStyle(color: Colors.white),
|
||||
border: InputBorder.none,
|
||||
contentPadding: EdgeInsets.all(0)),
|
||||
contentPadding: EdgeInsets.only(bottom: 10.rpx)),
|
||||
onChanged: (value) {
|
||||
controller.model.user?.nickName = value;
|
||||
controller.updateAll();
|
||||
@@ -180,53 +196,32 @@ class EditUserInfoPage extends GetView<MUserInfoController> {
|
||||
));
|
||||
}
|
||||
|
||||
// Widget getImageWidget(BuildContext context) {
|
||||
// try {
|
||||
// UserInfoController controller = Get.find();
|
||||
|
||||
// var head = controller.model.user!.tmpHead;
|
||||
// return InkWell(
|
||||
// onTap: () {
|
||||
// controller.uploadImg();
|
||||
// },
|
||||
// child: Row(
|
||||
// children: [
|
||||
// Container(
|
||||
// width: 50,
|
||||
// height: 50,
|
||||
// decoration: BoxDecoration(
|
||||
// color: FlutterFlowTheme.of(context).secondaryBackground,
|
||||
// ),
|
||||
// child: Container(
|
||||
// width: 120,
|
||||
// height: 120,
|
||||
// clipBehavior: Clip.antiAlias,
|
||||
// decoration: BoxDecoration(
|
||||
// shape: BoxShape.circle,
|
||||
// ),
|
||||
// child: head == null || head.isEmpty
|
||||
// ? Image.asset(
|
||||
// 'assets/images/avatar.png',
|
||||
// fit: BoxFit.cover,
|
||||
// )
|
||||
// : Image.network(
|
||||
// "${getStorageResourceUrl(head)}",
|
||||
// fit: BoxFit.cover,
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// SizedBox(width: 10),
|
||||
// Icon(
|
||||
// Icons.arrow_forward_ios,
|
||||
// color: Color(0xFF373737),
|
||||
// size: 12,
|
||||
// ),
|
||||
// ],
|
||||
// ),
|
||||
// );
|
||||
// } catch (e) {
|
||||
// print(e);
|
||||
// }
|
||||
// return Container();
|
||||
// }
|
||||
Widget getImageWidget(BuildContext context) {
|
||||
try {
|
||||
MUserInfoController controller = Get.find();
|
||||
var head = controller.model.user!.tmpHead;
|
||||
return Container(
|
||||
width: 200.rpx,
|
||||
height: 200.rpx,
|
||||
child: Container(
|
||||
clipBehavior: Clip.antiAlias,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
),
|
||||
child: head == null || head.isEmpty
|
||||
? Image.asset(
|
||||
'assets/img/avatar.png',
|
||||
fit: BoxFit.cover,
|
||||
)
|
||||
: Image.network(
|
||||
head,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
);
|
||||
} catch (e) {
|
||||
print(e);
|
||||
}
|
||||
return Container();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -107,7 +107,7 @@ class _MinePageState extends State<NewMinePage> {
|
||||
highlightColor: Colors.transparent,
|
||||
padding: EdgeInsets.only(right: 11.rpx),
|
||||
onTap: () {
|
||||
Get.toNamed("/peopleInfoPage");
|
||||
|
||||
},
|
||||
child: Container(
|
||||
height: 42.rpx,
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
||||
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||
import 'package:vbvs_app/controller/mh_controller/mh_language_controller.dart';
|
||||
|
||||
class SettingPage extends StatefulWidget {
|
||||
@override
|
||||
@@ -15,6 +16,13 @@ class SettingPage extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _SettingPageState extends State<SettingPage> {
|
||||
MHLanguageController languageController = Get.find();
|
||||
@override
|
||||
void initState() {
|
||||
languageController.initLanuageList();
|
||||
super.initState();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return LayoutBuilder(builder: (context, bodySize) {
|
||||
@@ -247,9 +255,10 @@ class _SettingPageState extends State<SettingPage> {
|
||||
Obx(() {
|
||||
return Text(
|
||||
languageController
|
||||
.selectLanguage
|
||||
.value!
|
||||
.language_name!,
|
||||
.selectLanguage
|
||||
.value
|
||||
?.language_name ??
|
||||
'简体中文',
|
||||
style: FlutterFlowTheme.of(
|
||||
context)
|
||||
.bodyMedium
|
||||
@@ -263,16 +272,15 @@ class _SettingPageState extends State<SettingPage> {
|
||||
),
|
||||
);
|
||||
}),
|
||||
|
||||
// SvgPicture.asset(
|
||||
// 'assets/img/icon/arrow_right.svg',
|
||||
// width: 8.rpx,
|
||||
// height: 15
|
||||
// .rpx, // 如果 SVG 中没有固定颜色,可以这样设置
|
||||
// color: themeController
|
||||
// .currentColor.sc3,
|
||||
// ),
|
||||
].divide(SizedBox(width: 28.rpx)),
|
||||
SvgPicture.asset(
|
||||
'assets/img/icon/arrow_right.svg',
|
||||
width: 8.rpx,
|
||||
height: 15
|
||||
.rpx, // 如果 SVG 中没有固定颜色,可以这样设置
|
||||
color: themeController
|
||||
.currentColor.sc3,
|
||||
),
|
||||
].divide(SizedBox(width: 22.rpx)),
|
||||
),
|
||||
],
|
||||
),
|
||||
@@ -286,10 +294,7 @@ class _SettingPageState extends State<SettingPage> {
|
||||
.currentColor.sc21, // 点击时的背景色
|
||||
padding: EdgeInsetsDirectional.fromSTEB(
|
||||
0.rpx, 0.rpx, 0.rpx, 0.rpx),
|
||||
onTap: () {
|
||||
print('点击了容器');
|
||||
Get.toNamed("/aboutUsPage");
|
||||
},
|
||||
onTap: () {},
|
||||
child: Container(
|
||||
child: Padding(
|
||||
padding: EdgeInsetsDirectional.fromSTEB(
|
||||
|
||||
@@ -11,6 +11,7 @@ import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||
import 'package:vbvs_app/controller/main_bottom/global_controller.dart';
|
||||
import 'package:vbvs_app/controller/mh_controller/people_info_controller.dart';
|
||||
|
||||
import 'package:vbvs_app/pages/common/selectDialog.dart';
|
||||
|
||||
class PeopleInfoPage extends StatefulWidget {
|
||||
@@ -269,7 +270,6 @@ class _PeopleInfoState extends State<PeopleInfoPage> {
|
||||
),
|
||||
),
|
||||
getLine(),
|
||||
|
||||
Container(
|
||||
width: double.infinity,
|
||||
height: MediaQuery.sizeOf(context).height *
|
||||
|
||||
Reference in New Issue
Block a user