gpt4 book ai didi

iphone - Objective-C 中的数组变量访问问题

转载 作者:行者123 更新时间:2023-11-29 11:23:55 29 4
gpt4 key购买 nike

我有一个问题,即使在测试了几个小时以实现我需要的不同方法后我也无法弄清楚:这是我遇到问题的代码:

AppDelegate.h

#import <Three20/Three20.h>

#import "NewsRssParser.h"
#import "NewsRss.h"

@class NewsRssParser;
@class NewsRss;

@interface AppDelegate : NSObject <UIApplicationDelegate,NewsRssParserDelegate> {
NewsRssParser * _rssParser;
NSMutableArray * _newsRssArray;
}

@property(readwrite, retain) NewsRssParser * rssParser;
@property(readwrite, retain) NSMutableArray * newsRssArray;

@end

AppDelegate.m

@implementation AppDelegate

@synthesize rssParser = _rssParser;
@synthesize newsRssArray = _newsRssArray;

[...]

- (void)myFunction{

NSMutableArray *dsItems = [[[NSMutableArray alloc] init] autorelease];

for(NSMutableArray *rssItem in self.rssParser.rssItems)
{
NSString * rssItemTitle = [(NewsRss *)rssItem title];
NSString * rssItemAuthor = [@"par " stringByAppendingString:[(NewsRss *)rssItem author]];
NSString * rssItemDescription = [(NewsRss *)rssItem description];
NSString * rssItemLinkUrl = [(NewsRss *)rssItem linkUrl];
NSString * rssItemImageUrl = [(NewsRss *)rssItem mediaUrl];

TTTableMessageItem *tMsgItem = [TTTableMessageItem itemWithTitle:rssItemTitle caption:rssItemAuthor text:rssItemDescription timestamp:nil imageURL:rssItemImageUrl URL:rssItemLinkUrl];
[self.newsRssArray addObject:tMsgItem];
[dsItems addObject:tMsgItem];
}

NSLog(@"AppDelegate/count/rssItems=%d", [self.rssParser.rssItems count]);
NSLog(@"AppDelegate/count/newsRssArray=%d", [self.newsRssArray count]);
NSLog(@"AppDelegate/count/dsItems=%d", [dsItems count]);

}

当我运行代码时,我的 RSS 解析器正常工作,我可以循环处理 self.rssParser.rssItems 中的 10 个项目。我需要在另一个 View 中访问这些项目以在表格中显示它们,因此我在 NSMutableArray * newsRssArray 中准备数据,我已在我的 .h 文件中声明

但是,如果我尝试将这 10 个对象添加到 NSMutableArray * newsRssArray 中,最终什么也没有(请参阅调试器中的代码输出)。如果我使用在我的函数中声明的 NSMutableArray *dsItems,我就成功地测试了我的代码。

这是 gdb 输出:

Attaching to process 47209.
2011-01-29 14:55:24.813 TestApp[47209:207] AppDelegate/count/rssItems=10
2011-01-29 14:55:24.814 TestApp[47209:207] AppDelegate/count/newsRssArray=0
2011-01-29 14:55:24.815 TestApp[47209:207] AppDelegate/count/dsItems=10
(gdb)

我做错了什么?

感谢您的帮助!

最佳答案

只是浏览了您提供的代码,我没有看到您在哪里初始化 newsRssArray。这是在另一个地方还是你忘记初始化了?

关于iphone - Objective-C 中的数组变量访问问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4835807/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com