2011-02-23 50 views
0

嘿 我有一個基本的表格視圖,裏面有圖像和文字。當點擊一個單元格時,我希望特定的事情發生在圖像是否被觸摸或單元格的其餘部分。有沒有辦法找出已經觸摸過什麼部分的細胞 謝謝UItableview中的圖像

回答

0

將UITapGestureRecognizer添加到imageView,或將imageView更改爲以圖像爲背景的自定義UIButton。
你可以將它們連接到你自己的方法,我們可以稱它爲imageTapped:。你會得到選擇indexpath這樣的:

- (IBAction)imageTapped:(id)sender { 
    UIView *cellContentView = [sender superview]; 
    UITableViewCell *cell = (UITableViewCell *)[cellContentView superview]; 
    NSIndexPath *tappedIndexPath = [tableView indexPathForCell:cell]; 
    // do something 
} 

取決於電池的佈局,以獲得indexpath的方式必須適應。

+0

當我嘗試時,這沒有奏效。任何其他方式? – user591375 2011-02-23 09:03:04

0

你爲什麼不嘗試財產以後這樣

UITapGestureRecognizer* tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(someMethodName)]; 
    tapGesture.numberOfTapsRequired = 1; 
    UIImageView* myImageView = [[UIImageView alloc] initWithFrame:CGRectZero]; 
    [myImageView addGestureRecognizer:tapGesture]; 

當過自來水用戶一旦這個方法會被調用,所以你可以跟蹤哪些圖像是通過設置的ImageView的THA標籤= indexPath.row或任何竊聽你選擇的東西。

+0

「initWithFrame:CGRectZero」它只是例如你可以隨心所欲。只需添加一個TapGesture吧 – 2011-02-23 09:26:08

+0

這意味着我需要一個自定義單元格來擁有UIImageView。我要使用UITableView單元格的默認圖像 – user591375 2011-02-23 17:57:46