我们可以在单击按钮时从NSMutableArray中删除值

时间:2014-04-05 09:10:30

标签: iphone nsmutablearray

我有一个NSMutableArray,当我在任何用户选择字段时插入值,这是一个多选字段,因此我可以根据NSMutableArray中的多个选择插入数据,但是当用户取消选择时选定的字段然后如何删除之前选择的未选择字段的值。

1 个答案:

答案 0 :(得分:2)

yourviewcontroller.h

 NSMutableArray *arr_select;
 NsMutableArray *your_arry;

Yourviewcontroller.m

- (void)viewDidLoad
{
  arr_select=[[NSMutableArray alloc]init];   

   for (int i = 0; i < [your_arry count]; i++)
    {
        [arr_select addObject:@"0"];
        [arr_select retain];
    }


}


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath   *)indexPath
{
    NSLog(@"%@",arr_select);

    NSNumber *anumber = [NSNumber numberWithInteger:indexPath.row];

    if([[arr_select objectAtIndex:indexPath.row] isEqualToString:@"0"])
    {
        [arr_select replaceObjectAtIndex:indexPath.row withObject:@"1"];
        [arr_select retain];
    }
    else
    {
        [arr_select replaceObjectAtIndex:indexPath.row withObject:@"0"];
        [arr_select retain];
    }


    NSLog(@"%@",arr_select);


    [tableView reloadData];


}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{


  if([[arr_select objectAtIndex:indexPath.row]isEqualToString:@"0"])
        {

            cell.accessoryType = UITableViewCellAccessoryNone;
        }
        else
        {
            cell.accessoryType = UITableViewCellAccessoryCheckmark;
        }

}


-(IBAction)Done:(id)sender
{
    NSLog(@"%@",arr_select);
    NSLog(@"%@",co_arr);
    arr_data = [[NSMutableArray alloc] init];

    for (int i = 0; i <[arr_select count]; i++)
    {
        if([[arr_select objectAtIndex:i] isEqualToString:@"1"])
        {
            NSLog(@"%d",i);

            [arr_data addObject:[co_arr objectAtIndex:i]];
            [arr_data retain];
        }
    }