Ho un UIScrollView
con alcune sottoview e così via. Sono anche lo scrollView delegate
e ho implementato lo - (void)scrollViewDidScroll:(UIScrollView *)scrollView
. Sotto il mio rotolo c'è un'altra vista.Annulla corrente UIScrollView touch
voglio dimostrare questo punto di vista, se lo ScrollView contentOffset
va sotto 50px sull'asse x, "reset" ScrollView di contentOffset
ed annullare il gesto ScrollView corrente in modo che l'utente abituato manipolare il suo contenuto quando viene visualizzata la nuova vista.
Ho implementato il metodo in questo modo:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.x < -50)
{
scrollView.contentOffset = CGPointZero;
[self showBackView];
//here I want to cancel the current touch on the scrollview since it keeps scrolling if I drag my finger
}
}
ho cercato di impostare la proprietà userInteractionEnabled
-NO
ma ha effetto solo dopo che il tocco è terminato. E ho provato un sacco di altre proprietà, ma nessuna sembra funzionare.
Come posso risolvere questo?
hai provato a impostare 'scrollEnabled' su NO? –
Sì, non ha funzionato. Disabilitare il pan gesture recogniser fa il lavoro. – Majster