【问题标题】:NSMutableArray not working properly...(count shouldn't be returning zero!)NSMutableArray 无法正常工作...(计数不应返回零!)
【发布时间】:2010-03-08 06:23:28
【问题描述】:

在向其中添加对象后,NSMutableArray 计数返回零,花了一个小时试图找出原因,但我仍然卡住了,所以我来到了这里。

基于以下代码的任何想法,问题是什么?

对象“搜索”是一个自定义类,在标头集中定义为一个指针,具有保留、非原子属性。

   - (NSMutableArray *) populateArrayFromPlist{
 NSLog(@"Populate Array from PList");
 NSDictionary *dictionary;
 // read "foo.plist" from application bundle
 NSString *path = [[NSBundle mainBundle] bundlePath];
 NSString *finalPath = [path stringByAppendingPathComponent:@"asearch.plist"];
 dictionary = [NSDictionary dictionaryWithContentsOfFile:finalPath];

 for (id key in dictionary)
 {
  search = [[ASearch alloc] init];



  [dictionary valueForKey:key];

  [search setID:[[dictionary valueForKey:key] intValue] ];

  //[[search searchString] initWithString: key];

  search.searchString = [[NSMutableString alloc] initWithString: key];

  if (search == nil) {
   printf("Let me know now\n\n\n\n");
  }

  NSLog(@"%@", [search searchString]);

  NSLog(@"Setting string Value: %s\n", [key cString]);
  NSLog(@"Setting ID Value: %i\n", [[dictionary valueForKey:key] intValue]);

  //NSLog(@"aSearchArray count == %i", [[aSearchArray count] intValue]);
  [aSearchArray addObject:search];
  NSLog(@"aSearchArray count == %i", [aSearchArray count] );

【问题讨论】:

    标签: iphone objective-c count nsmutablearray retain


    【解决方案1】:

    aSearchArray 是一个 nil 对象,这是您计数为零的唯一原因。

    要获得更多确认,只需创建一个新的本地数组并尝试将您的对象添加到其中。 你会得到一个正确的计数

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-22
      • 1970-01-01
      相关资源
      最近更新 更多