2015-12-08 32 views
0

我有一個隱藏的單元格內的按鈕(PFQueryTableViewController),當用戶執行某個以編程方式調用的Segue時,我想取消隱藏它。如果用戶在swift中執行segue,我將如何取消隱藏按鈕?

當用戶點擊單元格時,它會延伸到一個視圖控制器,該控制器將顯示單元格全屏的內容......我希望按鈕在調用segue時取消隱藏,以便用戶返回到他們可以在他們剛剛點擊的單元格上看到它的單元格表格。

我該怎麼做?問題後

編輯:

內cellRowForIndexPath我已在該按鈕

cell.myButton.tag = indexPath.row 
    cell.myButton.addTarget(self, action: "pressed:", forControlEvents: UIControlEvents.TouchUpInside) 
    cell.myButton.hidden = true 

而且SEGUE本身攜帶以下從AllPostsTableViewController細胞(存儲在後端解析)對面FullPostViewController信息。該代碼是這樣的(我會打電話的地方取消隱藏在這裏?):

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    self.performSegueWithIdentifier("showFullPost", sender: self) 
} 

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "showFullPost" { 
     let indexPath = self.tableView.indexPathForSelectedRow 
     let fullPostVC = segue.destinationViewController as! FullPostViewController 
     let object = self.objectAtIndexPath(indexPath) 
     fullPostVC.post = object?.objectForKey("postContent") as? String 
     let likeCount = object!.objectForKey("likedBy")!.count 
     fullPostVC.likesCounted = String(likeCount) 

     self.tableView.deselectRowAtIndexPath(indexPath!, animated: true) 

    } 
} 
+0

你怎麼隱藏這個按鈕? – adolfosrs

+0

你能列出你目前採取的任何步驟嗎? –

+0

我編輯了更多細節!感謝您的回覆 –

回答

0

一個可能的解決方案遵循以下(問題的徹底修改後應答仔細的編輯)。


既然你提到的表格單元格(每片含一個按鈕,我會承擔UIButton),我想你填充您的表視圖細胞UITableViewCell對象;後者的一些花哨的子類。在此課程中:

  • 如果您還沒有,請從此按鈕中創建一個@IBOutlet作爲此類中的一個屬性。
  • 超載的方法setSelected(...)到取消隱藏你的情況下按鈕UITableViewCell選擇(它將先於SEGUE)

因此,在你的UITableViewCell子類,你應該能夠沿線做一些事情:

// ...TableViewCell.swift 

Import UIKit 

// ... 

class ...TableViewCell: UITableViewCell { 

    // Properties 
    @IBOutlet weak var button: UIButton! 
     // button contained in UITableViewCell 

    // ... 

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

     // If table cell is selected (after which segue will follow), 
     // un-hide button. 
     if (selected) { 
      button.hidden = false 
     } 
    } 
} 

希望這能達到您的目標。

+0

注意:這是對問題的更徹底的第0版的回答。編輯後的問題現在更加詳細,我將在明天將此答案編輯爲更合適的答案(給出更新後的問題),除非其他人可以在此之前回答。但在此之前,我必須去睡覺。 – dfri

+0

嘿,只是想知道你現在是否有這個答案?這讓我瘋狂哈哈 –

+0

@ChrisWright抱歉等待;希望這可以讓你到某個地方! – dfri

相關問題