Ich benutze Vorbereitung für die Übertragung von Daten zwischen View-Controllern, Die erste if-Bedingung funktioniert, wenn die Kennung "ShowPost" und sendet die URL an die View-Controller. Wenn der Bezeichner jedoch "profileInfo" lautet, sendet das Segment keine Daten.Mehrere Bedingungen in Vorbereitung für den Übergang funktioniert nicht
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "ShowPost" {
if let indexPath = tableView.indexPathForSelectedRow {
let _url = searchResults[indexPath.row]["link"].stringValue
let destinationController = segue.destinationViewController as! ShowPostViewController
destinationController.url = _url
}
else if segue.identifier == "ProfileInfo" {
if let indexPath = tableView.indexPathForSelectedRow {
let _userName = searchResults[indexPath.row]["owner"]["display_name"].stringValue
// print("name dc: \(destinationController.userName)")
let _userId = searchResults[indexPath.row]["owner"]["user_id"].stringValue
let _userReputation = searchResults[indexPath.row]["owner"]["reputation"].stringValue
let _ppImageString = searchResults[indexPath.row]["owner"]["profile_image"].stringValue
let destinationController = segue.destinationViewController as! ProfileInfoViewController
destinationController.userName = _userName
destinationController.userId = _userId
destinationController.userReputation = _userReputation
destinationController.ppImageString = _ppImageString
}
}
}
}
Dank es hat funktioniert, aber jetzt ist es keine Bruchstelle innerhalb der Kollision mit: if lassen indexPath = tableView.indexPathForSelectedRow { let _userName = searchResults [indexPath.row] ["Besitzer"] ["Display_Name"]. stringValue –
Nicht bekommen, was Sie versuchen zu sagen. wo bringst du einen Haltepunkt, der nicht geschlagen wird? – Lion
aus dieser Zeile des Codes lassen Sie _userName = searchResults [indexPath.row] ["Besitzer"] ["Display_Name"]. StringValue an das Ende der if let Block ie destinationController.ppImageString = _ppImageString –