的NSMutableArray删除对象1最后一个对象
之前我有在NSMuatableArray
许多UIImageView
,我需要删除视图中的某个UIImageView
,但我想,如果我释放UIImageView
它仍然是在数组中。的NSMutableArray删除对象1最后一个对象
我不想那样,但有一点问题。我需要删除的UIImageView
正好是数组中最后一个对象之前的1个对象,所以我不能使用removeLastObject
。我知道标签号码,但是我不能这样写,因为我会在使用它时更改数组。
for (UIImageView *k in array1) {
if (k.tag==tagzahl-1) {
if (x==1){
[k removeFromSuperview];
[array1 remove object:k];
}
}
}
我使用:[array1 addObject:myimage];
到UIImageView
s添加到阵列,所以我不知道指数。
如果您知道哪个标签你说你做那么
UIView *view = [viewContainingImageView viewWithTag:tagzahl-1];
[view removeFromSuperview];
[array1 removeObject:view];
没有任何功能叫做viewContainingImageView viewWithTag: – killerwakka 2013-02-11 15:30:09
大声笑出来。 – *foe 2013-02-11 15:31:29
不应该将它替换为实际包含图像视图的视图的指针。 – 2013-02-11 15:32:51
if ([array1 count] >= 2)
{
NSUInteger index = [array1 count] - 2;
UIImageView *view = [array1 objectAtIndex:index];
[array1 removeObjectAtIndex:index];
[view removeFromSuperview];
}
的问题是在遍历它就像你不能从一个NSArray REMOVEOBJECT。如果你想保持循环,那么你应该保持一个指向你想要删除的对象的指针,并在完成迭代后将其删除。尽管最好的方法是不对它们进行迭代,并立即引用它。 Paul.s&*foe回答以两种不同的方式完成: – 2013-02-11 15:18:18