gpt4 book ai didi

ios - ViewController 加载两次 xcode iOS

转载 作者:行者123 更新时间:2023-11-29 01:27:08 25 4
gpt4 key购买 nike

我知道是什么导致它加载两次,但我不知道如何解决这个问题。我已经查看了同一主题的许多其他问题,但其中任何一个都与我的问题相匹配。

代码如下

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath){

let selectedCell = tableView.cellForRowAtIndexPath(indexPath)! as UITableViewCell
super.performSegueWithIdentifier("TVtoVCSegue", sender: selectedCell)
print("kolm")
}

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

if segue.identifier == "TVtoVCSegue" {
let otherViewController = segue.destinationViewController as! TTDetailCntr

if let cell = sender as? UITableViewCell, text = cell.textLabel?.text {
otherViewController.CurrentClass = text
}
}
}

据我了解,在tableview函数中

super.performSegueWithIdentifier("TVtoVCSegue", sender: selectedCell)

调用要加载的 View ,下面的函数调用要加载的 View ,

func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?)

两者都会加载 View ,所以我尝试整合这些方法并尝试这样做:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let indexPath = tableView.indexPathForSelectedRow! as NSIndexPath
let selectedCell = tableView.cellForRowAtIndexPath(indexPath)! as UITableViewCell

super.performSegueWithIdentifier("TVtoVCSegue", sender: selectedCell)

if segue.identifier == "TVtoVCSegue" {
let otherViewController = segue.destinationViewController as! TTDetailCntr

if let cell = sender as? UITableViewCell, text = cell.textLabel?.text {
otherViewController.CurrentClass = text
}
}
}

但是如果我尝试访问之前加载过两次的 View ,它会报错:错误来自行:

super.performSegueWithIdentifier("TVtoVCSegue", sender: selectedCell)

错误是:

warning: could not load any Objective-C class information. This will significantly reduce the quality of type information available.
(lldb)

代码的思路是获取indexPath值,然后传给另一个ViewController

最佳答案

您创建的 segue 很可能来自 tableViewCell 而不是 UIViewController

删除 Segue 并从 UIViewController 创建一个 Segue。

drag and drop from highlisghted part

按住 Ctrl 键并从图像中突出显示的圆圈拖动到目标 VC。

这将解决这个问题。

关于ios - ViewController 加载两次 xcode iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33877937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com