2014-10-23 5 views
11

Quando ho impostato navigationController.hidesBarOnSwipe = YES e provo a scorrere la visualizzazione Web mostrata la barra di navigazione è nascosta, ma non verrà più visualizzata quando cerco di tornare indietro.Impostazione navigationController.hidesBarsOnSwipe = YES non mostra mai più la mia barra di navigazione

mio ViewController sta ascoltando la manifestazione colpo:

[self.navigationController.barHideOnSwipeGestureRecognizer addTarget:self action:@selector(swipe:)]? 

Ma questo selettore è in realtà mai chiamato di nuovo dopo che la barra di navigazione è nascosta a causa della Swipe. Qualcuno ha implementato hidesBarOnSwipe? È un bug noto o è progettato in modo tale da non mostrare la barra di navigazione dopo averla nascosta.

Prima:

enter image description here

Dopo:

enter image description here

+1

ho notato che se ho un UIViewController con un tableView ottengo il problema si sta descrivendo. Tuttavia, se invece utilizzo un UITableViewController, il problema scompare. – odyth

+0

@haaakon sei riuscito a risolvere questo? Sto avendo lo stesso problema, sto usando un WKWebView inizializzato attraverso il codice, ma finora non sono stato in grado di risolverlo impostando i vincoli di layout sulla vista. –

+0

@HenrikHartz penso di aver usato un cocoapod che lo gestisce specificamente. – hakonbogen

risposta

6

Ho avuto un problema simile in cui la barra di navigazione non ha mostrato anche dopo che ho impostato il hidesBarOnSwipe-NO. Aggiungendo la seguente riga fissa per me (dopo aver impostato hidesBarOnSwipe a NO)

[[self navigationController] setNavigationBarHidden:NO animated:YES]; 
8

Ho lo stesso problema con il mio UIWebView, E 'fissato aggiornando i vincoli della mia WebView essere relativo al superview guida non di layout:

enter image description here

+2

Ecco, ma sfortunatamente funziona solo con una distanza di "0". Penso che controllerò una delle alternative di terze parti come https://github.com/andreamazz/AMScrollingNavbar. – DrMickeyLauer

+0

C'è qualche soluzione per usarlo con un'altra distanza (constraint.const) di 0? –