hyzp_ybqx-Commit109:版本号更新为1.4.20+20220306。已实现保存的多条登录用户记录的上下滚动功能

This commit is contained in:
WinUser01
2022-03-06 21:43:19 +08:00
parent 777cc6b84c
commit 36f4d4a699
3 changed files with 63 additions and 55 deletions
+60 -53
View File
@@ -428,10 +428,17 @@ class _LoginPageState extends State<LoginByName3> {
///构建历史账号ListView
Widget _buildListView() {
double _line_height = 110;
int _height = g_users.length * _line_height.toInt();
if (_height > 550) {
_height = 550;
}
if (g_can_expand_ListView) {
return Center(
child: Container(
width: ScreenUtil().screenWidth * 0.9,
// 模拟器:610越界,600刚好,550存放5个行刚好。S10,600越界
height: ScreenUtil().setHeight(_height),
decoration: BoxDecoration(
border: Border(
left: BorderSide(width: 1, color: Colors.black),
@@ -444,65 +451,65 @@ class _LoginPageState extends State<LoginByName3> {
// // color: Colors.black,
// // borderRadius: new BorderRadius.circular((20.0)),
// ),
child: Column(
children: [
ListView.builder(
shrinkWrap: true,
physics: BouncingScrollPhysics(),
itemBuilder: (context, index) {
UserAccount user = g_users[index];
return GestureDetector(
child: Column(
children: [
Container(
// color: Colors.grey[200],
color: Colors.grey[200],
padding: EdgeInsets.only(left: 8, top: 8, right: 8, bottom: 8),
child: Column(
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text("${user.username}"),
GestureDetector(
child: Padding(
padding: EdgeInsets.all(0),
child: Icon(
// Icons.remove_circle_outline,
Icons.highlight_off,
color: Colors.grey,
),
),
onTap: () {
setState(() {
g_users.remove(user);
SaveAccountPasswordManager.delUser(user);
//处理最后一个数据,假如最后一个被删掉,将Expand置为false
//如果个数大于1个或者唯一一个账号跟当前账号不一样才弹出历史账号
g_can_expand_ListView = g_users.isNotEmpty;
});
},
child: ListView.builder(
shrinkWrap: true,
physics: BouncingScrollPhysics(),
itemBuilder: (context, index) {
UserAccount user = g_users[index];
return GestureDetector(
child: Column(
children: [
Container(
// height: ScreenUtil().setHeight(_line_height),
// color: Colors.grey[200],
color: Colors.grey[200],
// padding: EdgeInsets.only(left: 8, top: 4, right: 8, bottom: 4),
padding: EdgeInsets.symmetric(
horizontal: ScreenUtil().setHeight(35),
vertical: ScreenUtil().setHeight(17)),
child: Column(
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text("${(index + 1).toString()}、${user.username}"),
GestureDetector(
child: Padding(
padding: EdgeInsets.all(0),
child: Icon(
// Icons.remove_circle_outline,
Icons.highlight_off,
color: Colors.grey,
),
],
),
onTap: () {
setState(() {
g_users.remove(user);
SaveAccountPasswordManager.delUser(user);
//处理最后一个数据,假如最后一个被删掉,将Expand置为false
//如果个数大于1个或者唯一一个账号跟当前账号不一样才弹出历史账号
g_can_expand_ListView = g_users.isNotEmpty;
});
},
),
Divider(height: 1.0, color: Colors.black),
],
),
),
],
Divider(height: 1.0, color: Colors.black),
],
),
),
onTap: () {
setState(() {
g_userInfo.username = user.username;
g_userInfo.password = user.password;
g_can_expand_ListView = false;
});
},
);
],
),
onTap: () {
setState(() {
g_userInfo.username = user.username;
g_userInfo.password = user.password;
g_can_expand_ListView = false;
});
},
itemCount: g_users.length,
)
],
);
},
itemCount: g_users.length,
),
),
);