我在自定義單元格內有UIButton
。在選擇單元格後,按鈕將其狀態更改爲「高亮顯示」。UIButton繼承選定狀態
我想阻止這種行爲。只有在特別觸摸按鈕時,按鈕纔會改變其狀態(我在IBAction
中注意到了這一點)。
可能嗎?
我在自定義單元格內有UIButton
。在選擇單元格後,按鈕將其狀態更改爲「高亮顯示」。UIButton繼承選定狀態
我想阻止這種行爲。只有在特別觸摸按鈕時,按鈕纔會改變其狀態(我在IBAction
中注意到了這一點)。
可能嗎?
這是我最終使用的(在我的Custom cell實現中):
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
BOOL highlightState = self.btn.highlighted;
BOOL selectedState = self.btn.selected;
[super setSelected:selected animated:animated];
self.btn.selected = selectedState;
self.btn.highlighted = highlightState;
}
- (void) setHighlighted:(BOOL)highlighted animated:(BOOL)animated
{
BOOL highlightState = self.btn.highlighted;
BOOL selectedState = self.btn.selected;
[super setHighlighted:highlighted animated:animated];
self.btn.selected = selectedState;
self.btn.highlighted = highlightState;
}
你也可以繼承UIButton
並重寫setSelected:
方法,而不是調用[super setSelected:]
或者如果您想自己選擇它與[super setSelected:NO];
稱呼它,稱之爲[super setSelected:YES];
在你的細胞的類重寫:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[super touchesBegan:touches withEvent:event];
self.button.highlighted = NO;
}