我有一个快速的代码,我想将一个字符串传递回objective-c class

时间:2016-05-23 17:17:04

标签: ios objective-c swift

我创建了一个用swift编码的新xib,其中调用此xib的代码是从objective-c中已经创建的项目完成的,我想要的是将一个字符串从swift文件传递到之前的objective-c视图。我尝试过NSUserDafaults,没有真正的运气,我曾想过制作一个全局变量并用新代码设置它,问题是我对obj-c并不熟悉。你能帮助我实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

以下是如何在Objective-C类中分配属性并在swift类中分配它。

在.h文件中的obj-c类(在本例中名为myObjClass)中的

声明了一个NSString属性:

@property (nonatomic, strong) NSString *myString;

然后在你的swift类中,在呈现视图控制器之前分配字符串,如下所示:

let myObjClass = self.storyboard?.instantiateViewControllerWithIdentifier("myObjClass") as? MyObjClass

// set its property
myObjClass.myString = "I am passing a string from Swift to Obj-C!"

self.navigationController?.pushViewController(myObjClass!, animated: true)

所以在你的myObjClass viewDidLoad方法中,你可以调用它,它应该打印你的字符串:

-(void) viewDidLoad {

    NSLog(@"My String: %@",self.myString);

}