2014-01-28 66 views
0

我有UIScrollView與其他UIView元素裏面。我的其他UIView元素大多是分段控件。如果我點擊一個UISegmentedControl並保持一秒鐘,然後嘗試滾動,則不會發生滾動。我只能在手指接觸並立即滑動時才能滾動。我檢查了其他iOS應用程序,例如郵件。行爲是你觸​​摸並按住郵件,然後突出顯示,但只要手指移開,滾動就會發生,突出顯示被撤消。我怎樣才能實現這種行爲?滾動視圖不會滾動時觸摸並按住然後滑動

+0

如果您在滾動視圖上添加了分段控件,則可以將其添加到控制器的視圖中。它應該工作。 –

回答

0

這個問題是UIScrollView的屬性。屬性canCancelContentTouches被設置爲NO。因此,觸摸事件由滾動視圖的子視圖處理,並且刷卡不會導致滾動。

0

您可以按照以下步驟之一:

  1. 如果您正在使用UISegmentedControl在你的UIScrollView,而不是說,在你的控制器的視圖中添加的UISegmentedControl。

  2. 如果您想在您的scrollView上使用UISegmentedControl,那麼您必須創建一個自定義的scrollView,方法是創建一個UIScrollView的子類並使用圖像視圖而不是UISegmentedControl添加可用作段的標籤。這是因爲你的UISegmentControl本身是一個觸摸處理程序,它打破了UIResponder鏈。所以,在觸摸事件期間滾動可能會遇到問題。

請讓我知道,如果這些作品。謝謝:)

+0

我忘了提及我已經有了一個控制器,並將分段控制添加到控制器的視圖中。 – neo

相關問題