Swift3 视图控制器使用Swift 3.0中的Segue执行两次

Swift3 视图控制器使用Swift 3.0中的Segue执行两次,swift3,segue,xcode8,uistoryboardsegue,Swift3,Segue,Xcode8,Uistoryboardsegue,我现在在Swift 3.0中遇到问题 作为附件图片(a),我将navigationController嵌入了ViewController.swift。ViewController.swift具有连接到UITableCell移动状态VC.swift的按钮。而MovementDetailsVC.swift则显示表格单元格中的所有值 我现在面临的问题是,当我在MovementDetailsVC.swift中创建按钮并执行segue以传递“EditData”函数中的数据时,页面显示两次 Movemen

我现在在Swift 3.0中遇到问题

作为附件图片(a),我将navigationController嵌入了ViewController.swift。ViewController.swift具有连接到UITableCell移动状态VC.swift的按钮。而MovementDetailsVC.swift则显示表格单元格中的所有值

我现在面临的问题是,当我在MovementDetailsVC.swift中创建按钮并执行segue以传递“EditData”函数中的数据时,页面显示两次

MovementDetailsVC.swift

import UIKit
class MovementDetailsVC: UIViewController {
    @IBAction func EditData(_ sender: Any) {
        performSegue(withIdentifier: "EditMovementDetails", sender: self)
    }
    override func viewDidLoad() {
        super.viewDidLoad()
    }
}
当我点击MovementDetailsVC.swift中的编辑按钮时,编辑MovementDetailsVC.swift控制器显示两次,如下图所示

我正在MovementDetailsVC.swift中使用执行segue准备segue

如何修复它,使视图只执行一次


谢谢

情节提要中的“编辑”按钮是否已经有一个指向MovementDetailsVC.swift页面的序列?如果是,您不需要调用
performsgue(带有标识符:“EditMovementDetails”,发件人:self)
。你只需要准备segue就可以给VC提供它需要显示的所有信息。我明白了。让我先试试。我稍后会告诉你的,它不起作用。无法将该值传递到EditMovementDetailSvGue。如果我不编写执行序列,则无法将该值传递到其他页面。我希望传递到其他页面和视图控制器的值只显示一次尝试将segue从MovementDetailsVC本身拖动到故事板中的EditMovementDetailsVC,而不是从按钮拖动。这样,它只会在您调用performSegue时触发,而不会在点击按钮时触发。