UINavigationController – Mantenere L’Immagine Di Sfondo Su Tutti I Punti Di Vista

C’è un modo per avere una immagine di sfondo rimangono costanti in tutte le viste in un controller di navigazione? Attualmente sto caricando lo stesso sfondo in ciascuna viewDidLoad metodo, ma questo mostra l’immagine di sfondo si muovono quando passare da una visualizzazione all’altra. Direi piuttosto il contenuto della vista infront di sfondo “slide” on/off screen, ma lo sfondo rimanere fermo. Questo è il mio attuale sfondo immagine codice di caricamento:

UIImageView *background = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
background.image = [UIImage imageNamed:@"InfoBackground.png"];
[self.view addSubview:background];
[self.view sendSubviewToBack:background];
[background release];

Grazie!

  • Questa è una immagine di sfondo che verrà utilizzato in ogni parte della tua app?
  • basato su ciò che Kevin sta chiedendo, sembra che stia parlando l’immagine di sfondo dell’attuale top view controller visualizzati all’interno il controller di navigazione, non la barra di navigazione.
  • A questa domanda si chiede come ottenere uno sfondo statico su un UINavigationController, senza di essa l’animazione in giro con le singole pagine. #9447979 si chiede come impostare globalmente una barra di navigazione in background, utilizzando UINavigationBar.aspetto. Le domande non sono nemmeno vagamente correlati. Questo è un perfetto esempio del perché la “comunità di moderazione” è una pessima idea,–la gente vede “vicino (3)” e fare clic su solo per unirsi al carrozzone, senza neanche leggere.
  • a discutere, a dibattere) ho votato a riaprire questo. Tuttavia, sono curioso di sapere come e perché pensi che la comunità di moderazione è una cattiva idea. Che cosa si preferisce? Non è meglio avere il potere assoluto essere messo nelle mani di tutti, piuttosto che solo pochi? Certo, ci sono alcuni aspetti negativi (come a volte la gente vincolare per essere “popolare”), ma io personalmente penso che è meglio che l’altra scelta. Più persone ci sono in carica, meno abusi di potere ci sono.
  • COSÌ la moderazione non contribuire ad una corretta moderazione; non c’è nessuna penalità per una questione chiusa in errore, in modo che si ottiene la gente facendo clic su “chiudi (3)” ogni volta che vedi, dal momento che li fa sentire come hanno aiutato–senza in realtà fare il lavoro. (E non è una scelta alternativa–questo sito ha ancora regolare i moderatori, e ho visto un sacco di domande erroneamente chiuso da loro, troppo.)
InformationsquelleAutor Kevin_TA | 2012-10-27



3 Replies
  1. 28

    Hm, forse, se si guarda il documentazione (scorrere verso il basso la Figura 2), si otterrà un’idea di ciò che si sta trattando. Poiché si imposta l’immagine di sfondo per ogni view controller di spinta verso il UINavigationController, si ottiene che l’animazione. Quello che dovete fare è impostare l’immagine di sfondo nel nav controller stesso.

    Credo myNavController.view insertSubview:myImageView atIndex:0 dovrebbe funzionare. Se l’immagine deve riempire dietro la visualizzazione del contenuto esattamente, si potrebbe impostare il frame coordinate le coordinate e/o altezza della navbar e la barra degli strumenti a cui si può accedere attraverso il controller di navigazione proprietà. Se non, basta impostare il frame per il superview del limite.

    Fammi sapere come va.

    Edit: Ah, nota che si avrebbe bisogno di assicurarsi che ogni possibilità di visualizzare i controller erano trasparenti.

    • Funziona come un fascino. Grazie.
    • Felice di aiutarti 🙂
    • Questo funziona, ma si può supporre che sarà sempre nella posizione di indice 0?
    • Bene, perché non dovrebbe essere indice 0? Io credo che, una volta impostato, non c’è nessun codice nel nav controller che si muovono in giro… Diamine, prova.
    • Questo funziona, ma spezza le animazioni. UIViewController sembra assumere le viste sono opachi, in modo che un nuovo modo di visualizzare la transizione sulla copre la vista. La vecchia concezione, che in realtà non spostare tutta la strada fuori dallo schermo, e questo diventa visibile se non è coperto da una nuova opaco vista.
    • Interessante, si sono corretti. Questo non funziona più correttamente come di iOS 7, perché il comportamento dell’animazione del UINavigationController è cambiato. Forse un modo per risolvere sarebbe di sfumare il view controller che sono più bassi della pila ogni volta che si preme uno nuovo su? Mi piacerebbe provarlo, e non ho il mio setup con me.

  2. 1

    penso che l’idea migliore è posto l’immagine di sfondo nella finestra e vista tutti(tutti viewcontroller vista) colore di sfondo di colore chiaro [UIColor clearColor].

  3. 1

    se si desidera che l’immagine di sfondo statico quindi non c’è un solo modo, ma non so se è possibile o no, Se ci metti l’immagine nella finestra e fare controller di navigazione trasparente poi rimanere statico, tutto quello che vuoi fare. perché non stiamo cambiando finestra mentre push o pop.

    Sto solo suggerendo di provare in questo modo non ho provato come questo.

Lascia un commento