草庐IT

swift - 多选行swift

coder 2023-09-13 原文

我正在使用 tableView 来显示用户数据,我想启用多个用户选择,现在它出现故障,当我取消选择一个选定的用户时,用户详细信息仍然保留在我将其存储在其中的数组中.我怎样才能解决这个问题。下面是我目前的代码

struct ChatUser {
   var id: String
var name: String
}

var selectedUser: [ChatUser] = []

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        if self.selectedUser.contains(self.users[indexPath.row]) {
            let myIndex = self.selectedUser.index(of: self.users[indexPath.row])
            self.selectedUser.remove(at: myIndex!)
        } else {
            self.selectedUser.append(self.users[indexPath.row])
        }

        selectedUser.forEach { (user) in
            print("SELECTD \(user.id)")
        }
    }

最佳答案

要删除您选择的数据以进行多选,您可以使用 tableview 委托(delegate)的 didDeselectRowAt 方法。

 struct ChatUser {
       var id: String
    var name: String
    }

    var selectedUser: [ChatUser] = []

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

            self.selectedUser.append(self.users[indexPath.row])

            selectedUser.forEach { (user) in
                print("SELECTD \(user.id)")
            }
    }

    func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {   
           if self.selectedUser.contains(self.users[indexPath.row]) {
                let myIndex = self.selectedUser.index(of: self.users[indexPath.row])
                self.selectedUser.remove(at: myIndex!)
            }
    }

关于swift - 多选行swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55574512/

有关swift - 多选行swift的更多相关文章

  1. ruby-on-rails - 如何使用 grouped_collection_select 显示多选? - 2

    我正在使用以下代码来显示类别的TreeView选择框:grouped_collection_select(:categories,:category_id,Category.top_level,:children,:name,:id,:name,:include_blank=>true)如何更改它以允许多选?此外,是否可以让它显示复选框而不是选择框? 最佳答案 尝试grouped_collection_select(:categories,:category_id,Category.top_level,:children,:name

  2. ruby-on-rails - Ruby on Rails 4 - simple_form 多选输入 - 2

    我有一个看起来像这样的simple_form输入字段:当我关闭multiple:true时,表单会提交为参数:particular_users选择的值,我可以在使用“raiseparams.inspect”进行调试时看到该值。但是,当我将multiple:true选项留在那里时,不会为参数:particular_users传递任何值。我做错了什么?编辑:我无法使用关联输入,因为:particular_users是一个虚拟属性,没有关系。我希望多选框传递其中的任何值,即使它们是任意的。 最佳答案 f.input:days,collec

  3. javascript - 多选复选框下拉 - 2

    我正在使用多选复选框下拉菜单。请看例子jsfiddle$(function(){$('#lstStates').multiselect({});});一旦您选择州,它就会显示TEXT值并用逗号连接,例如:NewJersey,NewYork,Ohio但我想要所选项目的VALUE如:NJ、NY、OH 最佳答案 您可以使用buttonText多选选项。http://jsfiddle.net/ejqngpn5/$('#lstStates').multiselect({buttonText:function(options,select){c

  4. javascript - 在从另一个多选 2 框中删除所选项目时,从多选 2 框中删除所选项目 - 2

    我有两个多选框,Box1选项是动态填充的,当我从这个选择框中选择任何选项时,它应该被添加到新的Box2中。此方案按要求工作。我面临的问题是。当我从Box1中删除任何选定的项目时,我可以将其从Box2中删除。但如果在Box2中选择了该项目,它仍然存在。例如:A、B、C是框1中的选定值,框2填充了A、B、C。如果我在Box2中选择B,c,并且如果我从Box1中删除B。我的Box2项目现在将是AC。但是B,C仍然会在Box2中保持选中状态。谁能帮我解决这个棘手的问题。$("#Box1").on("change",function(){varbox1List=$('#Box1').val();

  5. javascript - 如何知道 JqGrid 多选 'select all' 复选框被选中 - 2

    我正在尝试在JQgrid中显示选定的行。现在,我有这段代码:onSelectRow:function(rowid){varselectedRow=$('#mygrid').jqGrid('getGridParam','selarrrow');$("#totalSelected").val(selectedRow.length);}它工作正常,但是当“全选”复选框被选中时,它没有触发此代码,尽管在可视化中我们可以看到所有行都已被选中。所以我在想,如果我知道“全选”复选框被选中,我可以像这样设置总选择值:if(//selectallcheckboxischecked)$("#totalSe

  6. javascript - 检测下拉列表是否为多选 - 2

    我有一个通用的下拉列表填充脚本,它使用从各种jquery调用返回的选项填充select。它目前用于单一选择。我需要向它添加填充多选的能力,它按原样工作,但我不想包括初始*Pleasechoose*选项。我正在寻找jQuery或纯Javascript解决方案。if(dropdown!=null){varregList=document.getElementById(dropdown);regList.options.length=0;varopt=document.createElement("option");//**ifthedropdownis*not*amultiple="mul

  7. javascript - AngularJS 多选复选框保存在逗号分隔的字符串中 - 2

    我想从angularJS中选定的复选框项目中获取逗号分隔的字符串。同时,当从数据库中检索逗号分隔的字符串时,我希望相应地选中复选框。CarSignalDoor我用Plunker以非常简单的方式解决了这个问题http://plnkr.co/edit/YYd5bN5Chmyjt6gSH1Bw?p=preview$scope.Update=function(Drawings){varstr="";if(Drawings.CarMDrawings){str="Car";}if(Drawings.SignalMDrawings){str=str+",Signal";}if(Drawings.Do

  8. javascript - 如何像 Atlassian Jira 一样制作多选、自动完成的组合框 - 2

    关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我喜欢AtlassianJira的GUI和控件。特别是他们有很酷的多选组合控件。我需要在我的网站上实现类似的控制。我正在使用jquery-ui。他们使用什么库?什么执照?我能在某个地方找到它作为JScript吗?有没有类似的免费或者商业

  9. javascript - jQuery 多选下拉菜单,带有所选项目的关闭按钮 - 2

    关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭2年前。Improvethisquestion基本上我想要这样的东西。我有哪些现成的选择?这种小部件有适当的简称吗?

  10. javascript - 如何使用 PATRICK SPRINGSTUBBE jQuery 多选插件进行单选 - 2

    我正在使用PatrickSpringstubbe多选插件,它工作正常。但现在我想用它来进行单选。我知道我需要将选择设置为多个才能使插件工作。但是有没有办法将选项的数量限制为1。我试过了$("#ProductCategory").change(function(){$(".ms-options").css("visibility","hidden");}当您选择一个选项时,这会产生预期的效果,但您可以重新打开列表。我尝试在$("#ProductCategory").click上使用函数,但这没有用。 最佳答案 正如Kavindra所建

随机推荐