gpt4 book ai didi

swift - 在表格 View 单元格中长按时传递数据

转载 作者:行者123 更新时间:2023-11-30 10:33:05 26 4
gpt4 key购买 nike

有一个表格 View 来显示电话联系人。我想在长按单元格时将电话号码和电子邮件发送到另一个 View Controller 。长按工作正常,但我无法将数据传递到另一个 View Controller 。

enter image description here

VC 1:

  override func viewDidLoad() {
super.viewDidLoad()

let longPress = UILongPressGestureRecognizer(target: self, action: #selector(longpress))
tbMain.addGestureRecognizer(longPress)
}

表格 View 单元格的长按方法:

  @objc func longpress(sender: UILongPressGestureRecognizer) {

if sender.state == UIGestureRecognizer.State.began {
let touchPoint = sender.location(in: tbMain)
if tbMain.indexPathForRow(at: touchPoint) != nil {

let cell = tbMain.dequeueReusableCell(withIdentifier: "testCell") as! NewContactCell

print("Long press Pressed:)")

self.actionVC = self.storyboard!.instantiateViewController(withIdentifier: "ActionsViewController") as? ActionsViewController

UIView.transition(with: self.view, duration: 0.25, options: [.transitionCrossDissolve], animations: {
self.view.addSubview( self.actionVC.view)
}, completion: nil)


}
}
}

VC 2:

 internal var strPhoneNUmber : String!
internal var strEmail : String!

override func viewDidLoad() {
super.viewDidLoad()
print("Phone: \(strPhoneNUmber!)")
// Do any additional setup after loading the view.
}

最佳答案

从单元对象获取电话号码和电子邮件

self.actionVC.strPhoneNUmber = cell.strPhoneNUmber // get phone number from cell object 
self.actionVC. strEmail = cell.strEmail // get email from cell object

代码就像

@objc func longpress(sender: UILongPressGestureRecognizer) {
if sender.state == UIGestureRecognizer.State.began {
let touchPoint = sender.location(in: tbMain)
if tbMain.indexPathForRow(at: touchPoint) != nil {

let cell = tbMain.dequeueReusableCell(withIdentifier: "testCell") as! NewContactCell

print("Long press Pressed:)")

self.actionVC = self.storyboard!.instantiateViewController(withIdentifier: "ActionsViewController") as? ActionsViewController
**self.actionVC.strPhoneNUmber = cell.strPhoneNUmber // get phone number from cell object
self.actionVC. strEmail = cell.strEmail // get email from cell object**
UIView.transition(with: self.view, duration: 0.25, options: [.transitionCrossDissolve], animations: {
self.view.addSubview( self.actionVC.view)
}, completion: nil)


}
}
}

关于swift - 在表格 View 单元格中长按时传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58678026/

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