gpt4 book ai didi

ios - Swift:获取线程 1:发出 SIGABRT 信号,但我的所有 socket 均已连接

转载 作者:行者123 更新时间:2023-11-29 05:58:17 25 4
gpt4 key购买 nike

所以我得到了非常流行的线程 1:信号 SIGABRT,即使我的所有 socket 都已连接。在我所有的 socket 都很好之后,我才开始 build 这张 table ,现在它不断坏掉。

我知道我错过了一些简单/简单的东西,但我似乎无法弄清楚。

我正在从我拥有的另一个可以运行的应用程序(并且在 App Store 中)复制,所以我只是不确定发生了什么......感谢任何帮助。

import UIKit

class QueenTableViewController: UITableViewController {


@IBOutlet var queenTable: UITableView!

//MARK: Properties

var queens = [DragQueen]()


override func viewDidLoad() {
super.viewDidLoad()

loadSampleQueens()

// Uncomment the following line to preserve selection between presentations
// self.clearsSelectionOnViewWillAppear = false

// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem
}

// MARK: - Table view data source

override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

return queens.count
}


override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {


// Table view cells are reused and should be dequeued using a cell identifier.
let cellIdentifier = "QueenTableViewCell"
guard let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as? QueenTableViewCell else {
fatalError("The dequeued cell is not an instance of QueenTableViewCell.")
}

let queen = queens[indexPath.row]


// Configure the cell...


cell.QueenNameCell.text = queen.name
cell.QueenPhotoCell.image = queen.dragPhoto
cell.QueenValueCell.text = String(queen.ratingTotal)



return cell
}




//MARK: Private Methods

func loadSampleQueens() {


let starYellow = UIImage(named: "star-yellow")


let queen1 = DragQueen(
name: "Ben Delacreme",
ratingChar: 4,
ratingUnique: 4,
ratingNerve: 4,
ratingTalent: 4,
ratingTotal: 5.0,
isFave: true,
dragPhoto: starYellow!,
isLocked: false
)

let queen2 = DragQueen(
name: "Adore Delano",
ratingChar: 4,
ratingUnique: 4,
ratingNerve: 4,
ratingTalent: 4,
ratingTotal: 5.0,
isFave: true,
dragPhoto: starYellow!,
isLocked: false
)

let queen3 = DragQueen(
name: "Monique Heart",
ratingChar: 4,
ratingUnique: 4,
ratingNerve: 4,
ratingTalent: 4,
ratingTotal: 5.0,
isFave: true,
dragPhoto: starYellow!,
isLocked: false
)

queens += [queen1, queen2, queen3]

}

}

这是 QueenTableViewCell 类

import UIKit

class QueenTableViewCell: UITableViewCell {

//MARK: Properties

@IBOutlet weak var QueenNameCell: UILabel!
@IBOutlet weak var QueenPhotoCell: UIImageView!
@IBOutlet weak var QueenValueCell: UILabel!


override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}

override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)

// Configure the view for the selected state
}

}

最佳答案

我复制了你的代码,稍作修改就可以编译并显示内容而不会崩溃。

这是我做的:

  • 为了简化流程,我只将 QueenNameCell 保留在单元格中。我认为它不会影响结果,但您可以尝试进一步调试。
  • 你的QueenTableViewController是UITableViewController的子类,并且子类有自己的queenTable?相反,我将其更改为“class QueenTableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {”。当然,您需要删除 override 关键字才能使委托(delegate)方法能够编译。

更新:我认为 QueenTableViewController 类中的 IBOutlet queenTable 可能会导致问题,因为 UITableViewController 具有属性“open var tableView: UITableView!”已经。您可以子类化 UITableViewController 并使用现有的 tableView,或者像我所做的那样,子类化 UIViewController 并符合协议(protocol)“UITableViewDelegate、UITableViewDataSource”。然后你可以在那里使用你自己的tableView IBOutlet。

关于ios - Swift:获取线程 1:发出 SIGABRT 信号,但我的所有 socket 均已连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54918273/

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