[英]how do i know what Cell's button in UItableview clicked
我有一個UITableView與自定義Cell(UITableViewCell的子類)。 每個單元格視圖都有兩個按鈕btn1和btn2。 我設置我的ViewController來處理那些btn1s的TouchUp Inside。
如何知道點擊了哪個單元格按鈕?
我在上面放了一個標簽屬性。 假設左邊的標記為1,右邊的標記為2.所有UIView都有標記屬性,它只是一個整數值。
@property (nonatomic) NSInteger tag;
然后,當您收到按鈕時,您可以詢問按鈕的標簽是什么 - 1或2,您將知道它是哪個按鈕。
如果你想知道那個按鈕所屬的索引路徑,你可以抓住按鈕的superview,它應該是單元格,或者按鈕的superview的superview,如果你把它放在單元格的內容視圖上(通常你應該這樣):
UITableViewCell *cell = (UITableViewCell *)[button superview];
NSIndexPath *pathForSelectedButton = [tableView indexPathForCell:cell];
請注意,上面的代碼假定按鈕直接放在單元格上。
UIButton有一個標簽屬性。 您可以為每個按鈕設置唯一值,例如indexPath.row * 2和indexPath.row * 2 + 1(如果只有一個部分)。
然后您可以為每個按鈕添加目標方法。
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside]
最后,實現buttonPressed方法
- (void)buttonPressed:(UIButton *)sender {
NSInteger tag = sender.tag;
// your code here.
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.