访问不同Swift文件中的数组

时间:2015-06-17 16:04:46

标签: swift

我有一个名为results的数组,我在一个名为ParseJSON.swift的文件中创建,该文件是从ViewController.swift调用的,但是当我想在一个名为MyView.swift的单独文件中访问该数组时,它会说“使用”未解决的标识符'结果'“

显然问题是MyView.swift无法访问ParseJSON.swift中的元素,但我想知道典型的解决方案是什么?

在ParseJSON.swift中:

var results = [Int]()

在MyView.swift中:

var rect = DataRectangle<Int>()
rect.data = results << error here

2 个答案:

答案 0 :(得分:1)

不知道你的代码结构是什么,但一般来说,如果你想访问一个文件的某些变量到另一个文件:

以下是您可以这样做的方式:

//First file
    class ParseJson: NSObject {

        var results: NSArray = ["1", "2", "3", "4", "5"]

    }

//controller    
    class MyView: UIViewController {

       var copiedArray: NSArray = NSArray()

       override func viewDidLoad() {
            super.viewDidLoad()

             var json: ParseJson = ParseJson() //Create object of ParseJson
             copiedArray = json.results        //access class variables
        }}

答案 1 :(得分:-1)

创建一个名为Manager.swift的独立文件,并将此代码放入其中......

//manager.swift

import Foundation

struct Manager {

static var results = [Int]()


}

按Shift + Command + K清除项目。

现在您可以从任何视图控制器访问和更改该变量。这是一个例子。

//viewController.swift
    println(Manager.results)