Ios Swift:在Objective C类中设置NSString属性

Ios Swift:在Objective C类中设置NSString属性,ios,swift,nsstring,Ios,Swift,Nsstring,我对iOS开发相当陌生,我正试图弄清楚如何设置在.h文件中定义的以下属性 @property (weak, nonatomic) NSString *name; 在我的swift课程中,我试图将此属性设置为segue的一部分 if let destination = segue.destinationViewController as? ViewController { let indexPath = sender as! NSIndexPath destination.n

我对iOS开发相当陌生,我正试图弄清楚如何设置在.h文件中定义的以下属性

@property (weak, nonatomic) NSString *name;
在我的swift课程中,我试图将此属性设置为segue的一部分

  if let destination = segue.destinationViewController as? ViewController {
    let indexPath = sender as! NSIndexPath
    destination.name = self.names[indexPath.row]
    print(destination.name) //This is Nil
  }

但是在这个
目的地之后。name
仍然是
Nil
。正确的方法是什么?

您的代码在swift中似乎是正确的。现在,我能想到的唯一一件事可能是保持name属性为nil,那就是destinationViewController不是类ViewController,也就是说,我怀疑if语句没有执行。通过在if代码中放入打印语句进行验证,此时您正在展开destinationViewController。

您的代码在swift中似乎是正确的。现在,我能想到的唯一一件事可能是保持name属性为nil,那就是destinationViewController不是类ViewController,也就是说,我怀疑if语句没有执行。通过在if代码中放入一条打印语句进行验证,此时您正在展开destinationViewController。

是的,我已经尝试过了,并验证了该语句正在执行。而且self.name是有效的,并且它正在为正确的元素编制索引。您试图访问destination.name的位置?你能在这里提一下那个部分的代码吗。您正在设置它的属性权限,现在问题应该在您尝试访问它的部分中。是的,我已经尝试了,并验证了该语句正在执行。而且self.name是有效的,并且它正在为正确的元素编制索引。您试图访问destination.name的位置?你能在这里提一下那个部分的代码吗。您正在设置它的属性权限,现在问题应该在您尝试访问它的部分中。