顯示UIView也許有人已經問過這個問題,但我還沒有找到它。我有一些按鈕在我的屏幕上,當用戶點擊一個按鈕(並保持約2秒),一個新的UIView應該出現在用戶正在點擊的位置。就像iOS鍵盤上的一個按鈕一樣,如果您點按(例如)「E」按鈕,它應顯示包含一些額外按鈕的新視圖。長按按鈕
我沒有找到任何解決方案如何做到這一點,所以請幫助我,如果你知道如何解決這個問題。
編輯: 我已經添加了LongPressGestureRecognizer,但這個手勢永遠不會被解僱。
這裏是我的代碼:
var longPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: "buttonLongPressed:")
longPressGestureRecognizer.minimumPressDuration = 1.5
longPressGestureRecognizer.allowableMovement = 1
for buttonTitle in buttonTitles{
var button : UIButton!
if(buttonTitle.length == 1) {
button = createButtonWithTitle(buttonTitle)
} else {
button = createButtonWithImage(buttonTitle)
}
button.addGestureRecognizer(longPressGestureRecognizer)
}
func buttonLongPressed(recognizer : UILongPressGestureRecognizer) -> (Void) {
NSLog("tapped")
if(recognizer.state == UIGestureRecognizerState.Failed) {
NSLog("failed")
}
if(recognizer.state == UIGestureRecognizerState.Ended) {
NSLog("ended")
}
if(recognizer.state == UIGestureRecognizerState.Began) {
NSLog("began")
}
}
「longPressedHandler:」看起來像什麼?什麼參數?我怎樣才能得到用戶點擊的位置? – beeef 2014-10-08 11:10:09
我也想實現這個功能,當用戶點擊一個按鈕並且輕掃時,它總是應該激活當前用戶手指所在的按鈕。因爲通常情況下,如果您點擊一個按鈕,該按鈕將保持「活動」狀態,直到您釋放它爲止。 – beeef 2014-10-08 11:11:30