update list tile

master
张萌 3 years ago
parent b8fa6bcefc
commit 9179957890

@ -1,8 +1,8 @@
import 'package:ansu_ui/extension/num_extension.dart';
import 'package:ansu_ui/styles/as_colors.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:ansu_ui/styles/as_colors.dart';
import 'package:ansu_ui/extension/num_extension.dart';
class ASEditTile extends StatelessWidget {
final Widget? title;
@ -17,6 +17,8 @@ class ASEditTile extends StatelessWidget {
final Widget? suffix;
final bool? obscureText;
final String? obscuringCharacter;
final bool enableEdit;
ASEditTile({
Key? key,
this.title,
@ -31,7 +33,9 @@ class ASEditTile extends StatelessWidget {
this.suffix,
this.obscureText,
this.obscuringCharacter,
this.enableEdit=true,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return ConstrainedBox(
@ -56,6 +60,7 @@ class ASEditTile extends StatelessWidget {
Expanded(
child: TextField(
controller: controller,
enabled: enableEdit,
onChanged: onChange,
inputFormatters: inputFormatters,
keyboardType: keyBoardType,

@ -17,6 +17,10 @@ class ASListTile extends StatelessWidget {
///
final CrossAxisAlignment? crossAxisAlignment;
///
final bool visible;
ASListTile({
Key? key,
this.title,
@ -24,51 +28,56 @@ class ASListTile extends StatelessWidget {
this.trail,
this.height,
this.crossAxisAlignment,
this.visible = true,
}) : super(key: key);
ASListTile.option({
Key? key,
this.title,
this.text,
this.trail,
this.visible = true,
}) : height = 32.w,
crossAxisAlignment = CrossAxisAlignment.center,
super(key: key);
@override
Widget build(BuildContext context) {
return Container(
margin: height == null
? EdgeInsets.symmetric(vertical: 8.w, horizontal: 10.w)
: EdgeInsets.symmetric(horizontal: 10.w),
height: height,
alignment: Alignment.centerLeft,
child: Row(
crossAxisAlignment:
crossAxisAlignment ?? CrossAxisAlignment.start,
children: [
Container(
width: 85.w,
child: Text(
title!,
maxLines: 1,
overflow: TextOverflow.visible,
softWrap: false,
style: TextStyle(color: kTextColor, fontSize: 14.sp),
return Offstage(
offstage: !visible,
child: Container(
margin: height == null
? EdgeInsets.symmetric(vertical: 8.w, horizontal: 10.w)
: EdgeInsets.symmetric(horizontal: 10.w),
height: height,
alignment: Alignment.centerLeft,
child: Row(
crossAxisAlignment: crossAxisAlignment ?? CrossAxisAlignment.start,
children: [
Container(
width: 85.w,
child: Text(
title!,
maxLines: 1,
overflow: TextOverflow.visible,
softWrap: false,
style: TextStyle(color: kTextColor, fontSize: 14.sp),
),
),
Expanded(
child: text == null
? Text('')
: text is String
? Text(
text,
maxLines: 2,
style: TextStyle(color: kTextSubColor, fontSize: 14.sp),
)
: text,
),
),
Expanded(
child: text == null
? Text('')
: text is String
? Text(
text,
maxLines: 2,
style: TextStyle(color: kTextSubColor, fontSize: 14.sp),
)
: text,
),
trail ?? SizedBox()
],
trail ?? SizedBox()
],
),
),
);
}

Loading…
Cancel
Save