2012-04-23 50 views
1

我有一個UITableView,我按行,但不要鬆開手指,所以didSelectRowAtIndexPath還沒有叫吧?iPhone:UITableView的如何檢測該行選擇

  1. 如何檢測在我點擊哪一行?在哪種方法?
  2. 如何檢測我點擊桌面視圖?有沒有像rowIsPressed這樣的方法?或onTableViewTouchDown

回答

2

至少有兩個選項:

1)你也可以繼承的UITableViewCell,比使用你知道touchhandling從默認的UIView。 (如touchesBegan:等)/或添加一個自定義的uiview作爲tablecell的contentView。

2)爲每個表格單元添加一個gesturerecognizer。

要找出哪一行,你是,你可以給每一行標籤(這不是指行)cellForRow:atIndexPath:

0

試試這個

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath   *)indexPath 
+0

不,這是我的呼叫釋放手指後 – Jim 2012-04-23 15:49:47

0

有沒有這樣的方法擡起手指之前檢測所選擇的狀態......我想你應該覆蓋的UITableView類,並添加一個UIGestureRecognizer它。 而關於你的第二個問題,我認爲你是在談論這個表視圖的委託方法:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 

但是也有這將使你當前選定行的另一種方法。這是它(直接從表視圖類):

- (NSIndexPath *)indexPathForSelectedRow 

希望能有所幫助!