Chiudi il Menu
iSpazioiSpazio
  • Notizie
  • Offerte iSpazio
  • Sfondi
  • Downloads
  • Recensioni
  • iOS 26
  • Sconti Amazon
Menu Espanso
  • Home
  • Forum
  • Notizie
  • Offerte iSpazio
  • iOS 26
  • iPhone 16
  • Downloads
  • Guide
  • Sconti Amazon
  • Contatti
  • Pubblicità
Facebook X (Twitter) Instagram YouTube TikTok
iSpazioiSpazio
  •  Forum
  • Offerte iSpazio
  • Wallpapers Central
  • Teslers
Scarica l'App
  • Offerte
  • Sfondi
  • Guide
    • Personalizzazione
    • Video Guide TikTok
  • Recensioni
  • Downloads
    • Sfondi
    • Suonerie
    • Comandi Rapidi
    • Sfondi Personalizzati
    • Widget e Altro
    • iOS
    • iTunes
  • Dispositivi Apple
    1. iPhone
    2. iPad
    3. Mac
    4. Apple Watch
    5. iOS 26
    6. Vedi tutto

    Apple vuole mantenere invariato il prezzo di partenza dell’iPhone 18

    28 Gen 2026

    Apple aggiorna iPhone 5s e iPhone 6 con un nuovo firmware a oltre dieci anni dal lancio

    27 Gen 2026

    Apple continua a macinare utili nonostante l’aumento dei costi della RAM

    21 Gen 2026

    Il tuo iPhone 17 Pro Arancione cosmico diventerà rosa? I test danno una risposta chiara

    21 Gen 2026

    Pixelmator Pro arriva su iPad con Apple Creator Studio: tutte le novità della nuova app

    29 Gen 2026

    Apple annuncia l’arrivo di Pixelmator Pro su iPad

    13 Gen 2026

    iPadOS 26.2 e macOS 26.2 sbloccano un Wi-Fi più veloce su alcuni Mac e iPad

    6 Gen 2026

    iPhone Air 2, nuove indiscrezioni parlano di un lancio nel 2026

    26 Dic 2025

    Apple pronta a rinnovare due volte il MacBook Pro nello stesso anno

    26 Gen 2026

    MacBook Pro con M5 Max, i primi numeri fanno impressione: prestazioni da record in vista

    19 Gen 2026

    Samsung avvia in anticipo la produzione dei display OLED per il nuovo MacBook Pro

    19 Gen 2026

    Un nuovo monitor Apple emerge dai documenti regolatori: Studio Display o Pro Display XDR?

    16 Gen 2026

    Un avviso di frequenza cardiaca elevata dell’Apple Watch ha salvato la vita a un giornalista

    29 Gen 2026

    Strava e Komoot portano finalmente le mappe offline su Apple Watch

    29 Gen 2026

    Apple rilascia watchOS 26.2.1: la funzione “Posizione precisa” per AirTag arriva su Apple Watch

    27 Gen 2026

    Apple presenta il nuovo cinturino Black Unity intrecciato per Apple Watch

    26 Gen 2026

    Apple acquisisce Q.ai e punta a rivoluzionare Siri e l’uso dell’intelligenza artificiale

    30 Gen 2026

    La EFF chiede ad Apple più crittografia con la campagna “Encrypt It Already”

    30 Gen 2026

    La popolarità degli AirPods Pro 3 ha colto Apple di sorpresa

    30 Gen 2026

    Apple acquisisce Q.ai per 2 miliardi di dollari, una delle operazioni più importanti di sempre

    30 Gen 2026

    Apple acquisisce Q.ai e punta a rivoluzionare Siri e l’uso dell’intelligenza artificiale

    30 Gen 2026

    La EFF chiede ad Apple più crittografia con la campagna “Encrypt It Already”

    30 Gen 2026

    La popolarità degli AirPods Pro 3 ha colto Apple di sorpresa

    30 Gen 2026

    Apple acquisisce Q.ai per 2 miliardi di dollari, una delle operazioni più importanti di sempre

    30 Gen 2026
  • iPhone 17
  • iOS 26
  • Sconti Amazon
Contatti
Pubblicità
iSpazioiSpazio
  • Notizie
  • Offerte iSpazio
  • Sfondi
  • Downloads
  • Recensioni
  • iOS 26
  • Sconti Amazon
iPhone

iSpazio Developer Program #16 – TabBar Application – Parte 2: inseriamo una NavigationBar

Andrea BusiDi Andrea Busi12 Ago 2009Commenta5 min di lettura
Condividi Facebook Twitter Telegram WhatsApp Copia Link Threads Email
Share
Facebook Twitter WhatsApp Telegram Threads Email Copia Link
In qualità di Affiliato Amazon, iSpazio riceve una commissione dagli acquisti idonei senza alcun costo per voi. (info).
Icona Cerchi Prodotti Apple ed accessori Tech in sconto?

Cerchi Prodotti Apple ed accessori Tech in sconto?

Segui il nostro canale @scontiamolo su Telegram!

Advertising

Eccoci con il secondo tutorial dedicato alle TabBar. Nella prima lezione abbiamo visto come creare una struttura generale, composta da due sezioni. Oggi vedremo, invece, come inserire una UINavigationBar all’interno di una nuova sezione e come gestire il movimento tra le varie celle di una tabella. Ovvero, quando l’utente seleziona una determinata cella si aprirà una corrispondente vista che avremo definito con Interface Builder. La navigation bar, poi, ci permetterà di tornare alla tabella principale. Un po’ come avviene nel menù “Impostazioni” del’iPhone / iPod Touch!

Buon tutorial a tutti!

1. Creiamo un nuovo elemento per la TabBar

Iniziamo creando la classe che gestirà la nuova vista. Dal menù “File” scegliamo “New File…”, nel pannello che apparirà selezioniamo “UIViewController subclass” e chiamiamo questa nuova classe “TabellaController”.

Immagine 1

Abbiamo già imparato a gestire una tabella in questa serie di tutorial, quindi non rispiegherò il codice utilizzato. Riutilizziamo gli stessi metodi, quindi inserite nel file “TabellaController.h” il seguente codice:

Immagine 2

Mentre in “TabellaController.m” inserite questi metodi:

Immagine 3

Notate che alcune parti sono diverse, il tutto risulta più semplificato in questa gestione.

Salviamo entrambi i file e riapriamo “MainWindow.xib” per tornare in Interface Builder.

2. Definiamo l’aspetto del nuovo elemento

Dalla Libreria prendiamo un componente UINavigationController e inseriamolo nella tab bar, proprio come abbiamo fatto nello scorso tutorial per le due viste.

Immagine 4

Proprio come abbiamo fatto in precedenza cambiamo il nome della scheda in “Tabella”. Ecco il risultato finale:

Immagine 5

Ora non ci resta che inserire la tabella all’interno di questa vista. Dalla Libreria prediamo un componente UITableViewController e inseriamolo nella nostra vista. Il risultato che dovete ottenere è il seguente:

Immagine 6

Ora dobbiamo solo collegare la classe alla tabella appena inserita. Dal Pannello dei Documenti (“Tools -> Reveal in Document Window”) navighiamo fino al seguente percorso:

Immagine 7

Come mostrato in figura, selezioniamo il componente “Table View Controller” (che non è altro che la nostra tabella) e apriamo l'”Identity Inspector”. Dal menù Class scegliamo “TabellaController”:

Immagine 8

Abbiamo così concluso con la creazione della nostra tabella. Salviamo tutto, torniamo in XCode e clicchiamo su “Build and Go!”: la tabella sarà ora presente e funzionante nell’applicazione!

Immagine 9

3. Implementiamo due viste di dettaglio

Ora vediamo di analizzare un aspetto che molti utenti mi hanno chiesto via mail. Se noi volessimo associare un determinato file “xib” (ovvero creato con Interface Builder) ad una cella, come potremmo fare? In questa seconda parte del tutorial vedremo proprio di analizzare i passaggi necessari. Andremo a definire due viste, una che conterrà una foto dell’elemento “iPhone”, mentre un’altra che avviserà l’utente dell’assenza di informazioni per un determinato prodotto. Ovviamente potreste realizzare una vista con i dettagli per ogni prodotto presente nella tabella, ma il meccanismo rimane invariato.

Iniziamo creando due nuovi file xib, dal menù “File -> New File…” e scegliendo “Empty XIB”. Io ho chiamato il primo file “iPhoneDetail” e il secondo “OtherDetail”, ma nulla vieta di chiamarli in modo diverso!

Immagine 10

Procediamo proprio come abbiamo fatto all’inizio dello scorso tutorial per le viste “PrimaVista” e “Seconda Vista”, quindi definiamo subito via codice le due classi necessarie.
Andiamo, quindi, in “File -> New File…” e spostiamoci nella sezione “Cocoa Touch Class”, in cui selezioniamo il modello “UIViewController”: anche in questo caso dobbiamo creare due classi, chiamate “iPhoneDetailController” e “OtheDetailController”.

Immagine 11

Possiamo spostare i file appena creati nella sezione “Classes” del nostro progetto, per avere un risultato come questo:

Immagine 12

Ora siamo pronti per definire l’aspetto di queste due nuove viste.

4. Definiamo l’aspetto grafico delle due viste di dettaglio

Apriamo il file “iPhoneDetail.xib” in Interface Builder. Il procedimento è, come già detto, uguale a quello svolto per la definizione delle due viste “PrimaVista” e “SecondaVista”. Inseriamo, quindi, un componente UIView nel Pannello dei Documenti e modifichiamolo a nostro piacimento. Ecco come risulta essere la mia vista:

Immagine 11

Ora associamo questa vista alla sua classe. Dal Pannello dei Documenti selezioniamo il “File’s Owner” e nell'”Identity Inspector” selezioniamo “iPhoneDetailController” come classe:

Immagine 12

Andiamo poi in “Connections Inspector” e colleghiamo l’elemento “view” con la vista che abbiamo appena creato (quella contenente le due label per intenderci). Se abbiamo eseguito il passaggio in maniera corretta avremo questo risultato:

Immagine 15

Abbiamo così completato la definizione della vista. Eseguiamo lo stesso procedimento anche per il file “OtherDetail.xib”, collegandola però alla classe “OtherDetailController”. Ecco come appare tale vista:

Immagine 16

Possiamo salvare tutto e chiudere Interface Builder.

5. Come richiamare le due viste via codice

Ora non ci resta che analizzare il codice che ci permette di aprire queste due viste. Apriamo il file “TabellaController.h” e modifichiamolo nella seguente maniera:

Immagine 17

Abbiamo per prima cosa importato le due classi delle viste, e poi definito una vista generica, che poi inizializzeremo con la classe “iPhoneDetailController” oppure “OtherDetailController”, a seconda del caso. Perchè abbiamo utilizzato “UIViewController” come tipo dell’elemento “detail”? Perchè abbiamo sfruttato un paradigma della programmazione ad oggetti, che ci permette di definire un elemento con una superclasse, per poi inizializzarlo con una sottoclasse più specifica.

Ora apriamo il file “TabellaController.m” e inseriamo il metodo che viene richiamato quando si clicca su una cella:

Immagine 18

Anche questo metodo lo avevamo già trovato nel tutorial dedicato alle tabelle. Analizziamo, però, il codice al suo interno. Troviamo inizialmente un ciclo if, che controlla se l’utente ha selezionato al prima cella, ovvero quella contenente l’elemento iPhone: se il controllo da esito positivo, inizializziamo l’elemento “detail” con la classe relativa alla vista “iPhoneDetail”, altrimenti con l’altra vista generica. La clausola “initWithNibName” si riferisce proprio al file xib che deve essere associato all’elemento “detail”.
Dopo il ciclo troviamo le istruzioni che ci permettono di far apparire la nuova vista; non preoccupatevi troppo, sono sempre queste istruzioni da utilizzare.

Abbiamo concluso!! Clicchiamo su “Build and Go!” e godiamoci la nostra applicazione funzionante!!

Immagine 19

Se Avete Problemi, questo è il nostro file di progetto.

La guida è stata creata da Andrea Busi per “Bubi Devs”. I meriti, quindi, sono del legittimo autore.

Sai che siamo anche su Telegram? Unisciti al nostro canale iSpazio per ricevere le notifiche oppure Apple Italia per chattare con altri utenti. Scopri i migliori prodotti Tech in sconto su Amazon con il nostro canale OFFERTE iSpazio.
Icona dell'applicazione Le Migliori Offerte Amazon disponibile su App Store

Le Migliori Offerte Amazon

Selezionate dalla redazione di iSpazio
GUARDALE LIVE  

Scarica la nostra app e leggi le notizie in mobilità. Porta iSpazio sempre con te, anche su Telegram.
| Applicazione iOS
Con l'applicazione ufficiale di iSpazio resterai sempre aggiornato sulle notizie Apple, video tutorial per iPhone e tanto altro. riceverai una notifica per ogni nuovo articolo. Puoi utilizzare anche i Widget per tenere le novità sott'occhio nella Home o nella Lockscreen.
Scaricala subito!
| Canale Telegram 10.700+ Utenti
Su Telegram invece, segnaliamo soltanto le notizie più importanti ed urgenti oppure i nostri nuovi video su YouTube. E' un canale molto interessante, assolutamente non invasivo perchè non inviamo troppe push, e vi consigliamo di seguirci anche lì.
Unisciti a noi!
ispazio notifiche
iSpazio Developer Program
Seguici su Google News
Condividi Facebook Twitter Telegram WhatsApp Threads Email Copia Link
Articolo precedenteiSpazio Redeem Contest: Vinci le applicazioni dell’App Store – F.A.S.T.
Articolo successivo Dove? (Where To?), cerca i punti di interesse nelle vicinanze – OFFERTA e UPDATE | AppStore

Articoli correlati

Apple vuole mantenere invariato il prezzo di partenza dell’iPhone 18

28 Gen 2026Commenta

Apple aggiorna iPhone 5s e iPhone 6 con un nuovo firmware a oltre dieci anni dal lancio

27 Gen 2026Commenta

Apple continua a macinare utili nonostante l’aumento dei costi della RAM

21 Gen 2026Commenta

Il tuo iPhone 17 Pro Arancione cosmico diventerà rosa? I test danno una risposta chiara

21 Gen 2026Commenta

Leggi o Aggiungi Commenti

Advertising

Da non perdere!

Starlink sugli iPhone 18 Pro? Apple tratta con SpaceX

29 Gen 2026

iOS 26.3 e iPadOS 26.3 beta 3 sono ora disponibili per gli sviluppatori

27 Gen 2026

Apple presenta AirTag 2: più preciso, più potente e ancora più utile per ritrovare gli oggetti

26 Gen 2026

Apple presenta il nuovo cinturino Black Unity intrecciato per Apple Watch

26 Gen 2026

Gli articoli più letti

Apple acquisisce Q.ai e punta a rivoluzionare Siri e l’uso dell’intelligenza artificiale

La EFF chiede ad Apple più crittografia con la campagna “Encrypt It Already”

Info su iSpazio
Info su iSpazio

iSpazio è il punto di riferimento italiano per tutti gli appassionati Apple. Dal 2007, sul nostro sito trovi notizie, recensioni e guide per imparare ad utilizzare al meglio iOS, l'iPhone e tutti gli altri dispostivi dell'azienda.

Contattaci
Pubblicità

Il Network
Il Network

L'esperienza maturata su iSpazio ci ha portati, con il tempo, a realizzare altri progetti ed aprire nuovi siti con tematiche strettamente correlate al nostro Blog principale.

Oggi, siamo i fieri proprietari di un Network composto da: iSpazio, Scontiamolo, Wallpapers Central e Teslers.

Link Rapidi
  • Chi siamo
  • Contattaci
  • Legal
  • Privacy Policy
  • Pubblicità su
© Copyright 2026 iSpazio SRL | Partita IVA: 10137091210
  • Chi siamo
  • Contattaci
  • Legal
  • Privacy Policy
  • Pubblicità su

Scrivi quello che vuoi cercare e premi Invio.