我想在應用中嵌入UIScrollView並將其設置爲默認隱藏狀態。當我在鍵盤上按住一個鍵,即D
3秒鐘,那麼這個UIScrollView會彈出,是否有可能實現這個想法?Objective-c:當我按住幾秒鐘的按鍵時,是否可以彈出UIScrollView
感謝
我想在應用中嵌入UIScrollView並將其設置爲默認隱藏狀態。當我在鍵盤上按住一個鍵,即D
3秒鐘,那麼這個UIScrollView會彈出,是否有可能實現這個想法?Objective-c:當我按住幾秒鐘的按鍵時,是否可以彈出UIScrollView
感謝
如果你不打算長期鍵盤按下你會考慮使用UILongPressGestureRecognizer
但是,你正在尋找長期鍵盤壓力機。不幸的是,我看不出蘋果公司的鍵盤可以實現這種功能,因爲蘋果公司已經在鍵盤按鍵上長時間使用了其他東西。例如提供角色或其他貨幣面值的重音版本。 (嘗試長按S或$)
因此,我認爲你必須完全編碼你自己的鍵盤才能做你想做的事情。
UILongPressGestureRecognizer *longPressGesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(showResetMenu:)];
[piece addGestureRecognizer:longPressGesture];
[longPressGesture release];
- (void)showResetMenu:(UILongPressGestureRecognizer *)gestureRecognizer
{
if ([gestureRecognizer state] == UIGestureRecognizerStateBegan) {
UIMenuController *menuController = [UIMenuController sharedMenuController];
UIMenuItem *resetMenuItem = [[UIMenuItem alloc] initWithTitle:@"Reset" action:@selector(resetPiece:)];
CGPoint location = [gestureRecognizer locationInView:[gestureRecognizer view]];
[self becomeFirstResponder];
[menuController setMenuItems:[NSArray arrayWithObject:resetMenuItem]];
[menuController setTargetRect:CGRectMake(location.x, location.y, 0, 0) inView:[gestureRecognizer view]];
[menuController setMenuVisible:YES animated:YES];
pieceForReset = [gestureRecognizer view];
[resetMenuItem release];
}
}
這是簡單的按鈕長按上後,你會得到重置彈出
爲什麼收盤上下票?我認爲這是一個非常有效的問題,主要歸結爲:如何檢測一個按鍵被按下並保持一段時間? – DarkDust 2012-02-28 11:28:11
你是指屏幕鍵盤還是藍牙鍵盤?這是一個主要的區別。 – DarkDust 2012-02-28 11:29:22
我可以知道爲什麼你隱藏和顯示滾動視圖,我們可以使用設置的內容 – 2012-02-28 11:46:03