每次单击按钮时如何删除数组中的对象?

Posted

技术标签:

【中文标题】每次单击按钮时如何删除数组中的对象?【英文标题】:How do I remove an object in an array every time a button is clicked? 【发布时间】:2014-06-26 23:50:46 【问题描述】:

使用整数随机选择数组中的对象并显示在标签中。然后我从数组中删除该对象,这样同一个对象就不会在标签中显示两次。但是,我的方法不起作用。

如何修复此代码? 这是我目前所拥有的:

NSMutableArray *Array = [NSMutableArray arrayWithObjects:@"Obj1",
                                             @"Obj2",
                                             @"Obj3",
                                             @"Obj4",
                                             @"Obj5", nil];
int randNum = arc4random() % [_Array count];
NSString *Object1 =[self.mobility1ExerciseNameArray objectAtIndex:randNum];
self.lbl_ObjectName.text = Object1;
[_Array removeObjectAtIndex:randNum];

【问题讨论】:

【参考方案1】:

A在您放在这里的代码中,您使用了两个不同的数组名称。首先你使用:

Array

但是,在 objectatindex 消息中,您使用另一个名为mobility1ExerciseNameArray 的数组:

[self.mobility1ExerciseNameArray objectAtIndex:randNum];

我不确定这是否是真正的问题,或者这是否是一些复制粘贴错误。检查一下

【讨论】:

抱歉,这只是一个剪切和粘贴错误。 mobility1ExerciseNameArray 实际上应该是 Array

以上是关于每次单击按钮时如何删除数组中的对象?的主要内容,如果未能解决你的问题,请参考以下文章

当用户单击按钮时从数组中删除对象

如何通过单击按钮从反应状态挂钩数组中删除对象

单击按钮时如何从本地存储中删除多维数组?

如何访问数组中的“删除帖子”按钮以删除用户帖子

如何让我的 X 按钮删除数组中的特定对象?

当对象中的字段发生更改时如何从 v-model 数组中删除对象