您需要創建一個UILongPressGestureRecognizer。
然後,您需要將其附加到您希望識別longPress的視圖。 當您附加它時,您可以定義一個動作選擇器和一個目標。動作選擇器是一種當手勢被識別時將在目標中觸發的方法。
假設你在tableViewController創建手勢識別器,並且也是目標,然後它會是這個樣子
UILongPressGestureRecognizer* longPGR =
[[UILongPressGestureRecognizer alloc] initWithTarget:self
action:@selector(onLongPress:)];
[self.relevantViewInTableViewCell addGestureRecognizer:longPGR];
然後創建一個動作方法攔截水龍頭
-(void)onLongPress:(UILongPressGestureRecognizer*)pGesture
{
//statement
}
如果您使用動態單元格創建表格,則應在創建單元格時進行longPGR創建。
如果您有靜態單元,可以將IBOutlet @properties連接到相關單元,並在創建longPGR時使用該屬性。
要顯示其他viewController,沒有必要使用segue。你可以把新的viewController到NavigationController的堆棧中長按法:
[self.navigationController pushViewController:newViewController];
這已爲使用賽格瑞同樣的效果。
感謝您的建議。我使用了這兩個東西。我在cellForRowAtIndexPath中使用了第一部分。但我需要在LongPress事件中顯示我的下一個控制器視圖。但是,所有準備工作我都用了一個細胞。那麼我怎樣才能創造出同樣的細胞? – Himesh
@Gayan看到我的擴展答案。 – foundry
非常感謝。它正在工作。 – Himesh