多选 ListView 没有响应

Posted

技术标签:

【中文标题】多选 ListView 没有响应【英文标题】:Multi Selection ListView is not response 【发布时间】:2021-12-13 09:48:43 【问题描述】:

我在这个问题上发现了什么错误选择没有回应我我不知道我错了什么

这是我尝试的第一种方式

onTap: () 
          selectCommunity(ListCommunity _communityList) 
            if (widget.isMultiSelection) 
              final isSelected = selectedCommunityList.contains(_communityList);
              setState(() => isSelected
                  ? selectedCommunityList.remove(_communityList)
                  : selectedCommunityList.add(_communityList));
             else 
              Navigator.pop(context, _communityList);
            
          
        

这是我尝试的第二种方式

setState(() 
            _communityList[index].isSelected =
                !_communityList[index].isSelected;
            if (_communityList[index].isSelected == true) 
              selectedCommunityList.add(
                  ListCommunity(title, secondTitle, iconText, true, index));
             else if (_communityList[index].isSelected == false) 
              selectedCommunityList.removeWhere(
                  (element) => element.title == _communityList[index].title);
            
          );

在第二个代码中说

这是第一个代码的问题

【问题讨论】:

【参考方案1】:

ListCommunity 需要命名参数:

// Wrong:
ListCommunity(title, secondTitle, iconText, true, index)

// Good:
ListCommunity(title: title, secondTitle: secondTitle, iconText: iconText, isSelected: true, index: index)

详细了解 Dart 中的命名参数:https://dart.dev/guides/language/language-tour#parameters

【讨论】:

非常感谢你救了我的命 ;-; @imdsk 很高兴为您提供帮助。请不要忘记将我的解决方案标记为答案

以上是关于多选 ListView 没有响应的主要内容,如果未能解决你的问题,请参考以下文章

ListView OnItemClickListener 没有响应?

elementui表格div变化,内容没有响应

jsonArray请求没有响应[关闭]

当我在 Angularjs 中绑定来自响应的数据时,引导多选不起作用

进度指示器的状态没有变化[重复]

Android 之 ListView 点击响应代码?