我使用NSNmuber- number
(用于警报)设置字典:
#define kTimerNameKey @"kTimerNameKey"
NSDictionary *userInfo = [NSDictionary dictionaryWithObject:number forKey:kTimerNameKey];
当我告知代表时,我有这样的通知:
NSDictionary *userInfo = notification.userInfo;
我可以登录并查看确定。
我的问题是,如何从userInfo
中提取密钥的数量?
如果我使用objectForKey:kTimerNameKey
,他就不知道这个密钥(它在另一个类中)
因此,从委托中提取userInfo中的数字是我的问题。 感谢。
答案 0 :(得分:1)
尝试将此类转换为int,如[[userinfo objectForKey:kTimerNameKey] intValue];
希望它有效......
答案 1 :(得分:1)
for (NSString* key in userInfo)
{
int value = [[userInfo objectForKey:key] intValue];
}
或将密钥传递给另一个类。
答案 2 :(得分:0)
你不能只#import包含kTimerNameKey定义的“YourOtherClass.h”吗?
否则,如果您使用NSNotification发布通知,则可以传递该号码的值:
[[NSNotificationCenter defaultCenter] postNotificationName:@"notif_sendNumber" Object:myNumber];
然后在你的接收课上,你可以去:
-(void)myReceivingMethod:(NSNotification *)notification
{
NSNumber *receivedNumber = (NSNumber *)[notification object];
}