首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >准备工作中的比数值

准备工作中的比数值
EN

Stack Overflow用户
提问于 2018-04-17 01:48:50
回答 1查看 217关注 0票数 0

现在,我有两个按钮将textfield数据从vc1转换到vc2。我想拥有顶部按钮segue,无论是在textfield到vc2。我希望底部的按钮只是下一个风险投资。现在,这两个按钮将数据从textfield分离到下一个vc。

代码语言:javascript
复制
    import UIKit
class ViewController: UIViewController {
@IBOutlet var textfield: UITextField!
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    guard let c2 = segue.destination as? twoViewController else {return}
    c2.ss = textfield.text
}}

class twoViewController: UIViewController {
var ss: String!
@IBOutlet var datalbl: UILabel!
override func viewDidLoad() {
    super.viewDidLoad()
    datalbl.text = ss
}}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-17 02:22:57

有两种方法可以处理这一问题:

使用发件人并设置按钮的标记值

sender in prepare(for:sender:)是按下的按钮,因此您可以为您的2个按钮设置唯一的标记值,然后检查:

代码语言:javascript
复制
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    guard let c2 = segue.destination as? twoViewController else {return}
    if (sender as? UIButton)?.tag == 1 {
        c2.ss = textfield.text
    }
}

prepare(for:sender:)设置标识符,并在中检查

因为您有两个标记,所以单击Storyboard中的segue箭头并在Attributes检查器中设置它们的标识符。您可以将顶部按钮的segue标识符设置为"sendTextField",然后在prepare(for:sender:)中进行检查。

代码语言:javascript
复制
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    guard let c2 = segue.destination as? twoViewController else {return}
    if segue.identifier == "sendTextfield" {
        c2.ss = textfield.text
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49868634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档