我在故事板中的原型單元格上有一個自定義輔助視圖(一個UIButton)。當我點擊該按鈕時,不會調用點擊附件按鈕的委託方法。如果我使用標準的披露按鈕,它被稱爲很好。我假設我錯過了某處的連接。有人知道在哪裏?UITableView原型單元格上的自定義輔助視圖不會觸發
回答
我最終解決了這個問題,使用自定義表格單元的協議。
CustomAccessoryTableCellDelegate.h
@protocol CustomAccessoryTableCellDelegate <NSObject>
@required
- (void) accessoryButtonTappedForCell: (UITableViewCell *) cell;
@end
CustomAccessoryViewTableCell.h
@interface CustomAccessoryViewTableCell : UITableViewCell
/** The custom accessory delegate. */
@property (nonatomic, weak) id<CustomAccessoryTableCellDelegate> delegate;
@end
CustomAccessoryViewTableCell.m
- (IBAction) buttonAction:(id)sender{
if ([self.delegate respondsToSelector:@selector(accessoryButtonTappedForCell:)]) {
[self.delegate accessoryButtonTappedForCell:self];
}
}
內部表視圖控制器
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath{
CustomAccessoryViewTableCell *cell = [tableView
dequeueReusableCellWithIdentifier:@"MyCustomCell"];
cell.label.text = @"Some Name";
cell.delegate = self;
return cell;
}
#pragma mark - Custom Accessory View Delegate
- (void) accessoryButtonTappedForCell:(UITableViewCell *)cell{
[self tableView:self.writerTable
accessoryButtonTappedForRowWithIndexPath: [self.writerTable
indexPathForCell:cell]];
}
個
猜想1: 你不是真的有一個「自定義配件視圖」你有它放置在一個附件將大大UIButton
。這不會觸發代表配件輕觸按鈕,因爲它不是真正的配件。
猜測二: 你有一個真正的配件的觀點,但它從來沒有得到「自來水」事件,因爲你在它UIButton
這是吃的用戶交互,但不點火的動作。在這種情況下,請嘗試添加一個簡單的UIView
。
除此之外,我需要更多的信息。
我嘗試使用圖像視圖,而沒有任何區別。該按鈕連接到UITableViewCell的accessoryView屬性。有沒有辦法從UITableViewCell子類以編程方式調用它? – smokingoyster 2013-03-20 17:40:12
在你的'cellForRowAtIndexPath'中,當你得到單元格後,檢查你的'accessoryView'屬性是否有對你的視圖的引用,或者它是否爲'nil'。如果它在IB中正確設置,它應該存在。 – DBD 2013-03-20 17:49:12
我顯示按鈕/視圖/無論我在那裏。似乎它只處理自己定義的附件視圖類型上的輕敲事件。而且似乎沒有一種從表格單元編程的好方法。我最終使用了一個自定義協議,我將會給出答案。 – smokingoyster 2013-03-20 18:00:22
蘋果文檔用於附件委託方法說
委託通常響應於通過顯示與所選擇的行中的新的視圖上的展開按鈕的抽頭(附件視圖)。當爲indexPath中的行設置附件視圖時,不會調用此方法。
因此不需要定製配件視圖。這是一種標準行爲。
- 1. UITableView - 如何從輔助視圖註冊單元格?
- 2. 自定義uitableview單元格?
- 3. 具有自定義類的原型單元不會引發init?
- 4. 在輔助視圖上填充UITableView
- 5. 自定義UITableView不刷新單元格
- 6. 在自定義單元格上多點觸摸UITableView
- 7. Android - 自定義視圖上的OnClick不會觸發
- 8. UITableview單元格保留自定義圖像視圖過濾器
- 9. 必須將自定義表格視圖單元格替換爲靜態單元格的原型單元格嗎?
- 10. 自定義單元格的表視圖
- 11. UILabels和自定義的UITableView單元格
- 12. UITableView的自定義單元格滾動
- 13. 自定義強類型的輔助
- 14. UITableView 2自定義單元格
- 15. 自定義單元格在UITableView
- 16. 自定義UITableView(UIView +單元格)
- 17. Uitableview單元格自定義唯一ID
- 18. UITableView和自定義單元格
- 19. UITableView與自定義單元格
- 20. Xcode 4.2 UITableview自定義單元格
- 21. UITableView自定義單元格非常慢
- 22. UITableView中的多個原型單元格?
- 23. iPhone - UITableView顯示兩個不同的自定義單元格視圖
- 24. 自定義視圖的不同單元格大小的網格
- 25. 自定義UISlider上的輔助功能
- 26. 自定義DataContext上的INotifyPropertyChanged基類型不會觸發
- 27. 嵌套的UICollectionView單元格內的自定義UIbutton不會被觸發
- 28. 在編程添加單元格時,單擊方法時不會觸發自定義表格單元格
- 29. 自定義單元格渲染器的行動不會觸發handsontable
- 30. UITableView原型單元格未找到
我正在使用UITableViewCell子類,並在界面生成器中設計單元格。我沒有從桌面視圖控制器中完成它。我需要從這個子類中調用。 – smokingoyster 2013-03-20 17:42:07