swift 上没有按钮的操作

action without button on swift

我是新手,我想知道在 swift 或 objective-C 中是否可以在没有按钮交互或任何类型的用户交互的情况下执行操作?到目前为止,我可以将数组发送到第二个 ViewController,但我需要处理数据并将其显示在 UIPickerview 中,但我不知道如何...

我用这个传递数据:

func pepareSegueWithIdentifier(segue:UIStoryboardSeque, senderAnyObject?){
    var detailVC = segue.destinationViewController as ViewNotLogged;
    detailVC.pickerData1 = pickerData
  }

我在第二个中创建了 var viewcontroller

    class ViewNotLogged: UIViewcontroller, UIPickerViewDataSource, UIPickerDataDelegate{
var pickerData1=[String]()
}

但在这之后我不想修改数据甚至用 println() 来检查它

对于我上面的评论 - 你可以这样做:

class ViewNotLogged: UIViewController {
    var pickerData1 = [String]()

    override func viewDidLoad() {
        super.viewDidLoad()
        println("My data \(pickerData1)")
    }
}

并且在 VC 没有准备好

之前尽量不要实施 UIPickerViewDataSource, UIPickerViewDelegate

更新:

用我的数据进行模拟,效果很好。 这是我的代码:

class ViewController: UIViewController {

    var pickerData = ["Sw", "Sw"]

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        var detailVC = segue.destinationViewController as ViewNotLogged;
        detailVC.pickerData1 = pickerData
    }
}

class ViewNotLogged: UIViewController {
    var pickerData1 = [String]()

    override func viewDidLoad() {
        super.viewDidLoad()
        println("My data \(pickerData1)")
    }
}

在 IB 中我只有两个 VC,第一个是 ViewController,第二个是 ViewNotLogged。我一开始也有按钮,它使模态故事板转场。