设置值时出现问题

时间:2010-08-05 16:21:47

标签: objective-c nsstring return-value

这是我的代码段:

- (void) getData: (NSNotification *)aNotification{
NSData *data = [[aNotification userInfo] objectForKey:NSFileHandleNotificationDataItem];

if ([data length])
{
    return [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
} else {
    [self stopProcess];
}

[[aNotification object] readInBackgroundAndNotify];  
}

好的,那么如何在我的应用程序中的其他任何地方将NSString设置为getData的值?

谢谢, 利亚

2 个答案:

答案 0 :(得分:0)

首先,您无法从NSString函数返回void个对象。

其次,看起来这个方法是通过通知系统触发的。在应用程序中将NSString设置为getData ,需要具有(a)对象,以及(b)设置NSString的方法在那个对象上。

基本上,通知是异步发生的。您的getData方法只能提取字符串值,并通过消息将其传递给它知道的其他对象。

答案 1 :(得分:0)

假设此通知消息是类的成员,我将使用实例变量来存储字符串的最新值,以便需要它的其他客户端可以读取最后一个已知值。