繁体   English   中英

根据上一个按下的按钮,在下一个视图控制器中显示其他数组

[英]Show other array in next view controller depending on button pressed in previous

我花了几个小时来完成这项工作,但我试图根据在上一个视图中按下的按钮在视图控制器中显示一个数组。 所以我想使用相同的视图控制器但具有不同的数据。

在视图控制器中:

@IBAction func firstDeck(_ sender: UIButton) {
var dataSource : CardsDataModel? {

    didSet {
        label.text = cardsDeck.FirstDate()
        } 
    }
}

@IBAction func secondDeck(_ sender: UIButton) {
var dataSource : CardsDataModel? {

            didSet {
           label.text = cardsDeck.PizzaFriends()
         }
    }
}

所以有两个 cardDecks:PizzaFriends 和 FirstDates。 我尝试从按钮中使用 IBAction 来显示相关的 cardDeck 但没有成功。 卡片是空的。

NextViewController 中声明一个 String 类型变量的数组

var someData = [String]()

NextViewController 的viewDidLoad()方法中添加这个

print("Some Data: \(someData)")

在 IBAction 方法中的PreviousViewController中,根据按下的按钮,使用分配someText变量来呈现/推送NextViewController

@IBAction func firstDeck(_ sender: UIButton) {
    let vc = NextViewController()
    vc.someData = cardsDeck.FirstDate()

    // If you want to present NextViewController
    present(vc, animated: true, completion: nil)

    // If you want to push NextViewController to navigation stack
    //navigationController?.pushViewController(vc, animated: true)
}

@IBAction func secondDeck(_ sender: UIButton) {
    let vc = NextViewController()
    vc.someData = cardsDeck.PizzaFriends()

    // If you want to present NextViewController
    present(vc, animated: true, completion: nil)

    // If you want to push NextViewController to navigation stack
    //navigationController?.pushViewController(vc, animated: true)
}

这是一个示例NextViewController

class NextViewController: UIViewController {

    var someData = [String]()

    var cardView = SwipeCardView(frame: CGRect(x: 10, y: 150, width: 300, height: 600))

    override func viewDidLoad() {
        super.viewDidLoad()

        self.view.backgroundColor = .white

        self.view.addSubview(cardView)

        cardView.label.text = "\(someData)"
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM