Ich habe eine benutzerdefinierte Navigationsleiste, die ich beim Scrollen und Anzeigen beim Scrollen ausblenden möchte.iOS: Ausblenden und Anzeige benutzerdefinierter Navigationsleiste beim Scrollen der Tabellenansicht
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
self.navigationBView.hidden = YES;
self.bTableView.frame = CGRectMake(0, 0, CGRectGetWidth(self.view.frame), CGRectGetHeight(self.view.frame));
}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
self.navigationBView.hidden = NO;
self.bTableView.frame = CGRectMake(0, CGRectGetHeight(self.navigationBView.frame), CGRectGetWidth(self.view.frame), CGRectGetHeight(self.view.frame) - CGRectGetHeight(self.navigationBView.frame));
}
Aber Problem ist, dass ich auch eine UIRefreshControl
bei Spann haben Methode zu aktualisieren. Wenn ich versuche, den TableView für die Aktualisierung zu ziehen, ruft er
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
auf und blendet die Navigationsleiste aus. Gibt es eine Methode, um zu überprüfen, ob der Benutzer vom oberen Bildschirmrand herunterzieht, d. H. Von der ersten Tabellenzelle?
Ich versuchte
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.y != 0)
{
self.navigationBView.hidden = YES;
self.bTableView.frame = CGRectMake(0, 0, CGRectGetWidth(self.view.frame), CGRectGetHeight(self.view.frame));
}
}
tun Aber diese Navigationsleiste nicht ausblenden, wenn Benutzer Verlangsamung wird nach unten scrollen. Irgendeine Lösung, um das zu lösen?
ich es versucht. Aber wenn ich den Tisch wieder ziehe, um ihn zu aktualisieren, wird die Navigationsleiste ausgeblendet. – JMS
lege sonst Bedingung und ihre make hidden = false – jay