fix(group): 修复转让群主时成员选择器无法切换选项,仅能点击单个成员的问题
This commit is contained in:
parent
f40ed4d7fb
commit
e427047752
|
|
@ -146,10 +146,18 @@ class _GroupProfileMemberListState extends TIMUIKitState<GroupProfileMemberList>
|
|||
child: CheckBoxButton(
|
||||
onChanged: (isChecked) {
|
||||
if (isChecked) {
|
||||
if (widget.maxSelectNum != null && selectedMemberList.length >= widget.maxSelectNum!) {
|
||||
return;
|
||||
// When single-select, directly replace the previous selection
|
||||
if (widget.maxSelectNum != null && widget.maxSelectNum == 1) {
|
||||
selectedMemberList
|
||||
.removeWhere((element) => element.userID != memberInfo.userID);
|
||||
// Ensure only the new member remains
|
||||
selectedMemberList = [memberInfo];
|
||||
} else {
|
||||
if (widget.maxSelectNum != null && selectedMemberList.length >= widget.maxSelectNum!) {
|
||||
return;
|
||||
}
|
||||
selectedMemberList.add(memberInfo);
|
||||
}
|
||||
selectedMemberList.add(memberInfo);
|
||||
} else {
|
||||
selectedMemberList.removeWhere((element) => element.userID == memberInfo.userID);
|
||||
}
|
||||
|
|
@ -211,14 +219,21 @@ class _GroupProfileMemberListState extends TIMUIKitState<GroupProfileMemberList>
|
|||
widget.onTapMemberItem!(memberInfo, null);
|
||||
}
|
||||
if (widget.canSelectMember) {
|
||||
final isChecked = selectedMemberList.contains(memberInfo);
|
||||
final isChecked =
|
||||
selectedMemberList.any((element) => element.userID == memberInfo.userID);
|
||||
if (isChecked) {
|
||||
selectedMemberList.remove(memberInfo);
|
||||
selectedMemberList
|
||||
.removeWhere((element) => element.userID == memberInfo.userID);
|
||||
} else {
|
||||
if (widget.maxSelectNum != null && selectedMemberList.length >= widget.maxSelectNum!) {
|
||||
return;
|
||||
// When single-select, directly replace the previous selection with the new one
|
||||
if (widget.maxSelectNum != null && widget.maxSelectNum == 1) {
|
||||
selectedMemberList = [memberInfo];
|
||||
} else {
|
||||
if (widget.maxSelectNum != null && selectedMemberList.length >= widget.maxSelectNum!) {
|
||||
return;
|
||||
}
|
||||
selectedMemberList.add(memberInfo);
|
||||
}
|
||||
selectedMemberList.add(memberInfo);
|
||||
}
|
||||
if (widget.onSelectedMemberChange != null) {
|
||||
widget.onSelectedMemberChange!(selectedMemberList);
|
||||
|
|
|
|||
Loading…
Reference in New Issue