2016-04-08 14 views
0

sunulduğunda otherUserUid ve otherUserFullName başka bir denetleyiciye zorlanıyorum ancak hemen çağrı yapılmıyor. Bilgiler geride kalıyor ve bilgilerin görünmesi 2 tıklama alıyor.Sega gecikme için hazırlanın. Bilgi gecikme olmakla birlikte

HazırladımForSegue: daha önce çağrıldı didSelectRowAtIndexPath: Herhangi bir çözüm bunun nasıl düzeltileceğini?

Şerefe!

kılma fonk tableView (tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

Eğer thiss gibi Fonksiyon sonunda segue gerçekleştirmek zorunda didSelectRowAtIndexPath içinde
self.performSegueWithIdentifier("jsqDirectory", sender: self) 
    let indexPath = tableView.indexPathForSelectedRow! 

    let currentCell = tableView.cellForRowAtIndexPath(indexPath)! as UITableViewCell 

    self.otherUserFullName = (currentCell.textLabel?.text)! 
    print(self.otherUserFullName) 

    self.otherUserUid = (currentCell.detailTextLabel?.text)! 
    print(self.otherUserUid) 

} 

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "jsqDirectory" { 
     if let viewController = segue.destinationViewController as? JSQViewController{ 

      viewController.senderDisplayName = self.fullName 
      viewController.senderId = self.firebase.authData.uid 

      viewController.otherUid = self.otherUserUid 
      viewController.otherUser = self.otherUserFullName 
     } 
    } 
} 

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 

    let cell = tableView.dequeueReusableCellWithIdentifier("directoryCell") as UITableViewCell! 
    let directoryItem = items[indexPath.row] 

    cell.textLabel?.text = directoryItem.fullName 
    cell.detailTextLabel!.text = directoryItem.key 
    cell.detailTextLabel!.hidden = true 

    return cell 
} 

cevap

0

..

let indexPath = tableView.indexPathForSelectedRow! 

let currentCell = tableView.cellForRowAtIndexPath(indexPath)! as UITableViewCell 

self.otherUserFullName = (currentCell.textLabel?.text)! 
print(self.otherUserFullName) 

self.otherUserUid = (currentCell.detailTextLabel?.text)! 
print(self.otherUserUid) 
self.performSegueWithIdentifier("jsqDirectory", sender: self) 
+0

Teşekkürler dostum. İşe yaradı! –

+0

, değerleri bir sonraki görünüm Denetleyicisine iletmekten çok erken bir şekilde gerçekleştiriyordunuz. Bu cevabı Doğru ve Başparmak olarak işaretle seçeneğini işaretleyin. –