从 NSMutableArray xcode 中删除对象

Posted

技术标签:

【中文标题】从 NSMutableArray xcode 中删除对象【英文标题】:Removing an object from an NSMutableArray xcode 【发布时间】:2012-10-20 17:26:08 【问题描述】:

这个想法是创建多个对象,当单击按钮时,第一个创建的对象将首先被删除,依此类推。例如,它会创建对象#1,然后是 2,然后是 3,当第一次单击按钮时,它会先删除 1,然后是 2,然后是 3。

这是我在数组中创建项目的代码:

//array of imageviews
aryImages= [[NSMutableArray alloc] init];
//creation code for the images
CGRect frame = CGRectMake(480, 180, 60, 55);
imgViewPicture = [[UIImageView alloc] initWithFrame:frame];
imgViewPicture.image=[UIImage imageNamed:@"flower.png"];
[self.view addSubview:imgViewPicture];

[aryImages addObject:imgViewPicture];

那么这里是移动代码

for (int x = 0; x < [aryImages count]; x++) 
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1.5];
    [UIView setAnimationCurve:UIViewAnimationCurveLinear];
    [UIView setAnimationDelegate:self];
    [imgViewPicture setFrame:CGRectMake(120, 180, 60, 55)];
    [UIView commitAnimations];

这里是删除某个 x 位置以外的项目的代码:

 for (int x = 0; x < [aryImages count]; x++) 
        UIImageView *imgViewInQuestion = (UIImageView *)[aryImages objectAtIndex:x];
        if (imgViewInQuestion.frame.origin.x>=120) 
            [aryImages removeObjectAtIndex:x];
        
    

不幸的是,这不起作用。对我有什么想法或可能的解决方案吗?

【问题讨论】:

【参考方案1】:
-(IBAction)btnDelete_Clicked:(id)sender

    NSInteger x=0;
    if(x <= arrImages.count)
    
        [arrImages removeObjectAtIndex:x];
        x=x+1;
        NSLog(@"%@",arrImages);
    

【讨论】:

【参考方案2】:

很简单。 你有一个数组,例如aryImages. 使用整数:

int x=0;

 -(IBAction)removeObject
    
    if(x < = [aryImages count])
    
        [aryImages removeObjectAtIndex:x];
        x+=1;
    

    

【讨论】:

以上是关于从 NSMutableArray xcode 中删除对象的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode 中保存 NSMutableArray 的其他方法

访问 nsmutablearray xcode 中的图像

操场上的 NSMutableArray 导致 Xcode 7 出现错误

iOS:Xcode 4.2:Leaks Instrument 说我的 NSMutableArray 和 NSMutableDictionary 有泄漏,但我看不到在哪里

无法在 Simulator XCode 6.0 中运行应用程序

问题解决:MySQL 从复合主键中删几个键