Выполните эти шаги:
Прежде всего добавьте это в свой ViewController.swift, который является вашим первым видом:
override func viewDidLoad() {
super.viewDidLoad()
NSNotificationCenter.defaultCenter().addObserver(self, selector: "receiveNotification:", name: "notifyme", object: nil)
}
func receiveNotification(ns: NSNotification){
print("Received Notification")
}
После этого добавьте новый класс в Obj-c и не забудьте создать заголовок для этого класса.
В моста файл заголовка добавить импортировать ваш SecondViewController таким образом:
#import "SecondViewController.h"
И в вашем SecondViewController.m
добавить этот код, когда вы вернетесь к вашей быстрой ViewController.
- (IBAction)goBack:(id)sender {
[[NSNotificationCenter defaultCenter]
postNotificationName:@"notifyme"
object:nil
userInfo:nil];
[self dismissViewControllerAnimated:NO completion:nil];
}
Для дополнительной информации проверьте THIS образец проекта.
Обновление:
Если первый контроллер является объективным с и второй/целевой контроллер скор.
FirstViewController.m
#import "FirstViewController.h"
@interface FirstViewController()
@end
@implementation FirstViewController
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(receiveTestNotification:)
name:@"TestNotification"
object:nil];
}
- (void) receiveTestNotification:(NSNotification *) notification
{
if ([[notification name] isEqualToString:@"TestNotification"])
NSLog (@"Successfully received the test notification!");
}
@end
SecondViewController.swift
@IBAction func goBack(sender: AnyObject) {
NSNotificationCenter.defaultCenter().postNotificationName("TestNotification", object: nil, userInfo: nil)
self.dismissViewControllerAnimated(true, completion: nil)
}
Bridging-header.h
#import "FirstViewController.h"
Sample code
, что вы имеете в виду, посылая из OBJ с и, неточности на скор lol –
Я имел в виду отправку уведомлений с объектного кода c и попытку получить его из swift code.sorry для опечатка. проверьте вставленный частичный код. Сообщите мне, требуется ли дополнительная информация. Оцените свой быстрый ответ – Sandeep
Добавьте примечание @objc над 'receiveNotification', если у вас возникли проблемы. В противном случае ваш код выглядит отлично. –