簡體   English   中英

如何獲取UITableViewCell以在自定義UIView子類上調用setHighlighted或setSelected?

[英]How can I get UITableViewCell to call setHighlighted or setSelected on custom UIView subclass?

當選擇時, UITableViewCell 顯然會在合格的子視圖( UIImageViewUILabel等)上調用 setHighlighted:setSelected: setHighlighted: 假設我在單元格中有一個自定義UIView子類,並且希望它獲得相同的調用。 我已經實現了setHighlighted:setSelected: setHighlighted:但是沒有電話來。 有一些我必須聲明符合的接口嗎? 還是我將不得不使用UITableViewCell的自定義子類,覆蓋setSelected:setSelected:瀏覽子視圖?

他們似乎不只是setHighlighted:子視圖並詢問每個子視圖是否響應setSelected:和/或setHighlighted:似乎很奇怪。

創建UITableViewCell子類(如果使用情節@IBOutlet ,請添加自定義UIView並添加@IBOutlet )。 覆蓋UITableViewCell的子類中的setSelected

class CustomTableViewCell: UITableViewCell {

     @IBOutlet weak var customView: CustomView!

     //Other methods and properties


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

查看源代碼有幫助。 經過反復試驗,您需要包括以下內容:

@property (assign,getter=isHighlighted,nonatomic) BOOL highlighted;

- (void)setHighlighted:(BOOL)highlighted ;
- (BOOL)isHighlighted;

添加后,我的自定義UIView會收到單元格突出顯示的事件。

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM