需要发送CGpoint 到主类中。使用了Notification,但是不知在接受端如何从Notification中提取出CGpoint。在log输出的结果是0.0
代码
发送:
``
NSValue *pointAsObject =[NSValue valueWithCGPoint:CGPointMake(touchDetectingView.lastTouchPosition.x, touchDetectingView.lastTouchPosition.y)];
[[NSNotificationCenter defaultCenter] postNotificationName: @"swap" object:pointAsObject];
接收端 Header 文件:
接受端 M 文件:
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(incomingNotification:) name:@"swap" object:nil];
(void)incomingNotification:(NSNotification *)notification
{
NSValue *pointAsObject = [[notification userInfo] valueForKey:@"swap"];
NSLog (@"Successfully received the test notification %f",pointAsObject.CGPointValue.y);
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
请看黑体字,你应该放到userinfo里传递,post的时候,而不是通过object传递
NSValue *pointAsObject =[NSValue valueWithCGPoint:CGPointMake(touchDetectingView.lastTouchPosition.x, touchDetectingView.lastTouchPosition.y)];
NSDictionary *dict = [NSDictionary dictionaryWithObject:pointAsObject
forKey:@"point"];
[[NSNotificationCenter defaultCenter] postNotificationName: @"swap" object:self userinfo:dict];* **
接收并处理消息
- (void)incomingNotification:(NSNotification *)notification
{
NSValue *pointAsObject = [[notification userInfo] valueForKey:@"point"];
NSLog (@"Successfully received the test notification %f",pointAsObject.CGPointValue.y);
}