1

我正在做一個自定義的TabBar,通過在默認tabBar的頂部添加子視圖和以編程方式挑選選定的事件。它工作的很好,但問題是我的tabBar與Apple的行爲不完全一樣: 在Apple默認的一個,如果你觸摸而沒有釋放(觸摸),它會選擇標籤,但不會立即觸摸(可能在0.2秒後)。Apple UITabBarItem類中的默認「touch」事件是什麼?

  • 如果我在自定義TabBar上放置Touch Down事件,它會立即觸發選項卡。
  • 如果我把一個Touch Up Inside事件,它觸發只在發佈...

那麼,什麼是觸摸事件,蘋果在他TabBarItem類使用(或者可能是一個父類)?

(我認爲這是一個Touch Down,但如果是,爲什麼會出現這樣的事件「延遲」?)的

感謝。

回答

1

它可能是使用UILongPressGestureRecognizer。例如:

UILongPressGestureRecognizer *longPressGR = [[UILongPressGestureRecognizer alloc] 
    initWithTarget:self action:@selector(longPressDetected:)]; 
longPressGR.delegate = self; 
longPressGR.minimumPressDuration = 1.0; 
[yourView addGestureRecognizer:longPressGR];