0

ランダムに生成された配列があり、そのコンテンツを Nsmutablearray に保存しています。

マイコンテンツ このように 1 2 3 4 5 6 7 8

私の要件は、ユーザーが 3 番目の数字を削除し、[次へ] ボタンをクリックすると、4 番目のインデックス データが表示されることです。これは私のシナリオです。

私はこのコードを試しました

        NSLog(@"%u",[delegate.Bookmarknamearray count]-1);
        NSLog(@"%d",delegate.selectId);

            if([delegate.Bookmarknamearray count]-1==delegate.selectId)
            {
                if(([delegate.Bookmarknamearray count]-1)==0)
                {
                    [self.navigationController popToRootViewControllerAnimated:YES];
                }
                else
                {
                    NSLog(@"%u",[delegate.Bookmarknamearray count]-1);
                    NSLog(@"%d",delegate.selectId);

                    txttrickname.text=[delegate.Bookmarknamearray objectAtIndex:delegate.selectId-1];
                    txtview.text=[delegate.BookmarkDetailarray objectAtIndex:delegate.selectId-1];

                    NSLog(@"%@",txttrickname.text);
                    NSLog(@"%@",txtview.text);

                    [delegate.Bookmarknamearray removeObject:delegate.str];
                    self.navigationItem.title = [NSString stringWithFormat:@"%d/%d", (delegate.selectId), [delegate.Bookmarknamearray count]];

                    NSLog(@"%@",self.navigationItem.title);
                }
            }

            else
            {


                    if([delegate.Bookmarknamearray count]==1)
                    {

                        [self.navigationController popToRootViewControllerAnimated:YES];

                    }
                else
                {


                    NSLog(@"%lu",(unsigned long)[delegate.Bookmarknamearray count]);

                    NSLog(@"%d",delegate.selectId);
                    NSLog(@"%d",delegate.counter);

                    txttrickname.text=[delegate.Bookmarknamearray objectAtIndex:delegate.selectId+1];
                    txtview.text=[delegate.BookmarkDetailarray objectAtIndex:delegate.selectId+1];

                    NSLog(@"%@",txttrickname.text);
                    NSLog(@"%@",txtview.text);

                   [delegate.Bookmarknamearray removeObject:delegate.str];
                    self.navigationItem.title = [NSString stringWithFormat:@"%d/%d", (delegate.selectId+1), [delegate.Bookmarknamearray count]];

                    NSLog(@"%@",self.navigationItem.title);
                }
            }


    }

前もって感謝します..

4

2 に答える 2

1

あなたが言ったように、これらの値を可変配列に既に格納している場合、3 番目の数値を削除するには、次のように記述します。

[yourArray removeObjectAtIndex:2];

したがって、4 番目の数字は 3 番目の数字になります。

これを探していますか?

于 2013-08-07T06:05:45.290 に答える
0

これを試してみてください..

-(IBAction)remove:(UIButton *)sender
{

   for(NSMutableDictionary *dict in YOUR_ARRAY){
        if([[dict objectForKey:@"id"]integerValue]==sender.tag){
            [dict removeAllObject];
        }
    }

}
于 2013-08-07T05:59:55.517 に答える