【问题标题】:create array for store data from url为从 url 存储数据创建数组
【发布时间】:2013-03-26 18:33:30
【问题描述】:

我想在数组中存储 4 个来自 url 的书名(.php?info=1&b=1 显示第一本书的名称)并运行该代码并使用这些名称。

我也想创建类对象并将名字专用于第一个对象(第二个名称用于第二个对象等)

这是我的代码:

#import "Recipe.h"


for (int i = 1; i <= 4; i++)
    {
        Recipe *booki = [Recipe new];    // create object
        NSLog(@"%d,%@",i,booki);

        NSString *c = [[NSString alloc]initWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://192.168.1.102:81/temp/book.php?info=1&b=%d",i]]];

        NSMutableArray *b = [[NSMutableArray alloc]init];
        [b addObject:c];

        NSLog(@"%@,%@",c,b);

        booki.name = [NSString stringWithString:c];

        recipes = [NSMutableArray arrayWithCapacity:4];
        //NSLog(@"%@",recipes);
        recipes = [NSMutableArray arrayWithObjects:booki, nil];

在这段代码中,我只看到对象中的一个名字和它的书名

【问题讨论】:

    标签: objective-c nsmutablearray


    【解决方案1】:

    问题似乎是这样的。

    recipes = [NSMutableArray arrayWithObjects:si, nil];

    因为您在 for 循环中循环。如果你想拥有所有的名字。您需要在 for 循环之外创建一个数组。而不是每次向其添加对象时都创建一个新数组。

    if(!recipes){
       recipes = [NSMutableArray array];
    }
    [recipes addObject:si];
    

    【讨论】:

    • @mamalmamali 我建议的代码应该在循环内使用。但是你需要保留一个实例变量来保存食谱。
    猜你喜欢
    • 2014-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-03
    • 1970-01-01
    • 2022-09-30
    • 1970-01-01
    相关资源
    最近更新 更多