Close Menu
iSpazioiSpazio
  • Notizie
  • Offerte
  • Downloads
  • Recensioni
  • Sconti Amazon
Menu Espanso
  • Home
  • Forum
  • Notizie
  • Offerte
  • iOS 18
  • iPhone 16
  • Downloads
  • Guide
  • Sconti Amazon
  • Contatti
  • Pubblicità
Facebook X (Twitter) Instagram YouTube TikTok
iSpazioiSpazio
  •  Forum
  • Scontiamolo
  • Wallpapers Central
  • Teslers
Scarica l'App
  • W W D C 2 5
  • Offerte
  • 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. View All

    iPhone 17 Pro, tutte le nuove funzioni in arrivo a settembre

    16 Giu 2025

    iPhone 16e entra nella Top 10 in Europa, ma non convince come gli SE

    3 Giu 2025

    WhatsApp interrompe il supporto per alcuni modelli di iPhone

    3 Giu 2025

    iPhone 17 e 17 Air con schermo a 120Hz, ma senza ProMotion | Rumor

    3 Giu 2025

    iPadOS 26 apre la strada all’iPad gigante: tutto ruota intorno al nuovo modello pieghevole

    13 Giu 2025

    iPadOS 26, watchOS 26 e macOS Tahoe: Ecco quali sono i dispositivi compatiibili sui quali potremo installarli

    10 Giu 2025

    iPadOS 26 migliora il multitasking con le applicazioni che diventano finestre in stile desktop

    10 Giu 2025

    iPadOS 26 rivoluzionerà il multitasking su iPad

    8 Giu 2025

    Apple migliora l’AutoFill dei codici di verifica su iOS 26 e macOS Tahoe

    13 Giu 2025

    iPadOS 26, watchOS 26 e macOS Tahoe: Ecco quali sono i dispositivi compatiibili sui quali potremo installarli

    10 Giu 2025

    Apple presenta macOS Tahoe 26 che rende il Mac più versatile, produttivo ed intelligente che mai

    10 Giu 2025

    macOS 26 potrebbe chiamarsi “macOS Tahoe” | Rumor

    2 Giu 2025

    watchOS 26 porta il Centro di Controllo personalizzato dell’iPhone su Apple Watch

    16 Giu 2025

    watchOS 26 introduce una nuova gesture del polso: ecco i modelli compatibili

    12 Giu 2025

    iOS 26 introduce le Notifiche per il Meteo estremamente avverso e widget dedicati per le tue prossime destinazioni

    11 Giu 2025

    Apple rimuove 5 quadranti da Apple Watch con l’arrivo di watchOS 26: ecco a quali dovremo dire addio

    11 Giu 2025

    iOS 26 risolve il grande limite delle passkey, finalmente sarà possibile trasferirle in modo sicuro

    16 Giu 2025

    Apple rilascerà le beta pubbliche per il firmware degli AirPods

    16 Giu 2025

    Ecco tutti i migliori prodotti in Offerta su Amazon selezionati da Scontiamolo per il 16 Giugno 2025

    16 Giu 2025

    TikTok lancia avatar AI per la pubblicità: la nuova minaccia per gli influencer è già realtà

    16 Giu 2025

    iOS 26 risolve il grande limite delle passkey, finalmente sarà possibile trasferirle in modo sicuro

    16 Giu 2025

    Apple rilascerà le beta pubbliche per il firmware degli AirPods

    16 Giu 2025

    Ecco tutti i migliori prodotti in Offerta su Amazon selezionati da Scontiamolo per il 16 Giugno 2025

    16 Giu 2025

    TikTok lancia avatar AI per la pubblicità: la nuova minaccia per gli influencer è già realtà

    16 Giu 2025
  • iPhone 16
  • iOS 26
  • Sconti Amazon
Contatti
Pubblicità
iSpazioiSpazio
  • Notizie
  • Offerte
  • Downloads
  • Recensioni
  • Sconti Amazon
iPhone

iSpazio Developer Program #10 – Come creare una tabella (Parte III)

Andrea BusiBy Andrea Busi21 Feb 2009Commenta5 Mins Read
Condividi Facebook Twitter Telegram WhatsApp Copy Link Threads Email
Share
Facebook Twitter WhatsApp Telegram Threads Email Copy Link
In qualità di Affiliato Amazon, iSpazio riceve un guadagno dagli acquisti idonei (info). Vedi le offerte su Telegram.
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

Siamo giunti al terzo e ultimo appuntamento riguardante le UITableView, ovvero le tabelle presenti nell’SDK per iPhone. Negli scorsi tutorial abbiamo visto come dichiarare e crare una tabella (Parte I) e come aggiungere delle funzionalità (Parte II). In questa ultima parte vedremo, invece, come aggiungere una funzionalità molto importante: la ricerca.

Prima di iniziare con il tutorial vero e proprio vorrei sapere la vostra opinione: vi è piaciuta questa nuova forma, ovvero trattare un argomento in più parti con maggiori dettagli? Oppure lo ritenete troppo dispersivo? Esprimete le vostre opinioni nei commenti!

TUTORIAL:

  1. Inseriamo la barra di ricerca
  2. Dichiariamo e colleghiamo i componenti necessari
  3. Modifichiamo i metodi già esistenti
  4. Implementiamo la ricerca

1. Inseriamo la barra di ricerca

Il primo step da effettuare è quello di inserire la barra per la ricerca. Facciamo doppio clic sul file “MainWindow.xib” e si aprirà Interface Builder. Nella nostra applicazione inseriamo un componente “Search Bar”, in modo da avere un layout come questo:

immagine-164

Ovviamente questa è la soluzione più semplice, volendo potreste inserire un bottone che, quando premuto, fa apparire la barra, oppure integrare il box di ricerca direttamenente nella Navigation Bar principale.

Dopo aver fatto ciò, dobbiamo inserire un collegamento molto importante. Senza selezionare nessun elemento della nostra applicazione entriamo in “Connections Inspector” e dovreste avere un pannello come questo:

Ora colleghiamo l’outlet “delegate” (che troviamo nell’ultima sezione in basso) alla barra di ricerca che abbiamo appena inserito. Se abbiamo eseguito tutto correttamente avremo il seguente risultato:

immagine-231

Salviamo tutto e chiudiamo l’IB, tornando così ad XCode.

2. Dichiariamo e colleghiamo i componenti necessari

Ora, come al solito, dobbiamo dichiarare in XCode il componente che abbiamo appena inserito (che poi dovremo anche collegare), e un array. Apriamo il file “MainView.h” e inseriamo il seguente codice:

immagine-328

Come potete notare anche dai commenti presenti nel codice, abbiamo dichiarato un componente di tipo UISearchBar, che andremo a collegare con la barra di ricerca, e una lista, che ci servirà nell’algoritmo di ricerca.

Ora apriamo il file “MainView.m” e andiamo nella riga dove è presente l’istruzione “@synthesize”, aggiungendo gli elementi appena dichiarati, ottenedo un’istruzione così composta:

immagine-420

Ora, salviamo entrambe i file e apriamo nuovamente il file “MainWindow.xib”. Dobbiamo collegare il componente che abbiamo dichiarato in XCode con quello che abbiamo inserito in Interface Builder. Entriamo sempre in “Connections Inspector” e colleghiamo “searchBar” alla barra presente nell’applicazione. Se abbiamo eseguito tutto correttamente avremo un pannello come questo:

immagine-513

Nota: se non visualizzate il componente “searchBar” è perchè non avete salvato il file in maniera corretta. Per essere più sicuri potete anche cliccare su “Build and Go!” prima di aprire Interface Builder, ovviamente ignorando eventuali errori.

Salviamo e chiudiamo nuovamente l’Interface Builder, per tornare ad XCode.

3. Modifichiamo i metodi già esistenti

È venuto il momento di inserire il codice vero e proprio. Faccio una piccola premessa: vi presenterò, come al solito, il vario codice da inserire, ma mi limiterò a spiegarlo solo dove strettamente necessario. Tutte le parti, comunque, saranno provviste di commenti, che spesso bastano a descrivere la funzione di alcune istruzioni.

Apriamo il file “MainView.m” e modifichiamo il metodo “awakeFromNib” nel seguente modo:

immagine-612

In questo metodo abbiamo inizializzato il nuovo array che avevamo dichiarato in precedenza, che, come già detto in precedenza, ci servirà nell’algoritmo di ricerca.

Il secondo metodo da modificare è “numberOfRowsInSection”. Ecco il nuovo codice:

immagine-710

Questa modifica va eseguita in quanto la tabella ora non è più composta dagli elementi della lista originale, ma da quelli della lista filtrata, ovvero di quegli elementi selezionati mediante la ricerca. Ovviamente se l’utente non esegue nessuna ricerca, gli elementi della lista filtrata corrisponderanno agli elementi della lista originale.

Se è chiaro questo ragionamento, è facile intuire quali saranno i prossimi due metodi da modificare: il primo è “cellForRowAtIndexPath:”, ovvero il metodo che si occupa di inserire i valori nelle celle. Ecco come deve essere modificato:

immagine-86

L’ultimo metodo da modificare, invece, sarà “didSelectRowAtIndexPath:”, e anche in questo caso l’unica modifica riguarda proprio la lista di riferimento.

immagine-94

Abbiamo così eseguito tutte le modifiche necessarie! Ma cosa manca? La parte più importante, ovvero la ricerca vera e propria!

4. Implementiamo la ricerca

È arrivato il momento di inserire il codice che implementa la ricerca nella nostra applicazione. Prima di mostrarvi i passaggi necessari, devo premettere che il codice non è stato scritto da me, ma l’ho preso da un esempio realizzato da Apple. I commenti, quindi, saranno davvero pochi, anche perchè non è fondamentale capire come funziona tale algoritmo, in quanto lo stesso codice si può utilizzare in qualsiasi altra applicazione che necessiti di una tabella con ricerca.

Iniziamo con due metodi “accessori”, ovvero non legati direttamente all’algoritmo di ricerca. Ecco i due metodi da inserire nel file “MainView.m”:

immagine-104

Il codice è ben commentato, quindi non dovreste aver problemi a capire cosa viene eseguito. Altri due metodi non legati alla ricerca ma necessari sono i seguenti:

immagine-1112

Anche in questo caso i commenti spiegano quasi tutte le istruzioni presenti. Ho aggiunto diverse istruzioni riguardanti il “buttonEdit”, in modo che non venga ablitato quando c’è una ricerca in corso. Si potrebbe attivare questa opzione, ma per semplicità ho preferito lasciarla disattivata, in modo da non creare errori inattesi.

Quello che manca ora è l’algoritmo di ricerca vero e proprio, che è il seguente:

immagine-1210

Per quasto algoritmo non voglio spendere parole, in quanto, come detto in precedenza, è stato scritto da Apple, quindi non posso permettermi di fare modifiche!

Cliccate ora su “Build and GO!”, se avete eseguito tutto correttamente si aprirà la vostra applicazione!

immagine-1310

Con questa terza parte si conclude la mini-serie di tutorial dedicati alle UITableView. Speriamo di avervi fornito elementi sufficienti per sfruttare in maniera completa questi potenti elementi messi a disposizione da Apple.

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

La guida è stata creata da Andrea Busi per “iSpazio.net” e “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.

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
Seguici su Google News
Share. Facebook Twitter Telegram WhatsApp Threads Email Copy Link
Previous ArticleTamagotchi: ‘Round the World | AppStore
Next Article Aqua Moto Racing: La Recensione | AppStore [Video]

Articoli correlati

iPhone 17 Pro, tutte le nuove funzioni in arrivo a settembre

16 Giu 2025Commenta

iPhone 16e entra nella Top 10 in Europa, ma non convince come gli SE

3 Giu 2025Commenta

WhatsApp interrompe il supporto per alcuni modelli di iPhone

3 Giu 2025Commenta

iPhone 17 e 17 Air con schermo a 120Hz, ma senza ProMotion | Rumor

3 Giu 2025Commenta

Leggi o Aggiungi Commenti

Advertising

Da non perdere!

iOS 26 Beta 1 è disponibile: Ecco come scaricarlo ed installarlo su iPhone

9 Giu 2025

Ecco la lista degli iPhone sui quali è possibile installare iOS 26

9 Giu 2025

Apple presenta iOS 26 con nuovo design “Liquid Glass” e tantissime novità!

10 Giu 2025

Apple prepara il più grande restyling software dai tempi di iOS 7 e coinvolgerà tutti i suoi sistemi operativi

26 Mag 2025
Advertising

Gli articoli più letti

watchOS 26 introduce una nuova gesture del polso: ecco i modelli compatibili

iOS 18.6 sarà uno degli ultimi aggiornamenti prima dell’arrivo di iOS 26, ecco cosa aspettarsi

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 Smart Central e Teslers.

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

Type above and press Enter to search. Press Esc to cancel.