我试图在ViewController中使用来自单独类的被操纵字符串。为了简单起见,假设我在String
中Other.class
使用stringByReplacingOccurrencesOfString
进行更改。然后,我将此值设置为String
中的ViewController
。
var name: String!
name = "John"
...
func changeString {
name = name.stringByReplacingOccurrencesOfString("a", withString: "e")
}
self.mainViewController!.fakeName = name
在我的ViewController
中,然后我将该字符串用作表格单元格的值,如下所示:
var fakeName: String?
...
if (indexPath.row == 0) {
cell.nameLabel.text = fakeName!
}
出于某种原因,fakeName
一直返回零值,我不明白为什么。有什么想法吗?
我是Java开发人员,他是Swift的新手,所以我只是习惯了语法。如果这个问题有一个非常明显的答案,请道歉。
答案 0 :(得分:1)
我认为这对你有用。从类For Example中声明变量out side。其他事项您已创建一个.swift文件并将变量声明为全局变量。
var fakeName : String = ""
// First Class where you change the value of name
class ViewController : UIViewController
{
func changeString {
name = name.stringByReplacingOccurrencesOfString("a", withString: "e")
}
}
// Other Class where you use the value of name
class mainViewController : UIViewController
{
......
if (indexPath.row == 0) {
cell.nameLabel.text = fakeName
}
}
//根据您的问题,您必须分配您的变量,而不仅仅是去除
var fakeName: String = ""