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 supera Samsung nel mercato globale degli smartphone, non solo grazie a iPhone 17

    12 Gen 2026

    Il designer dell’ iPhone Air lascia Apple e approda nella startup AI Hawk

    8 Gen 2026

    iPhone 17e: tornano le voci su Isola dinamica e chip A19

    7 Gen 2026

    iPhone con fotocamera da 200MP: secondo Morgan Stanley arriverà nel 2028

    7 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

    Non solo display OLED, il prossimo iPad mini sarà alimentato dal chip A20 Pro

    17 Dic 2025

    Mouse e tastiere Logitech non funzionano su macOS: ecco perché

    8 Gen 2026

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

    6 Gen 2026

    Il MacBook economico con chip A18 Pro arriverà in primavera?

    5 Gen 2026

    Tre nuovi MacBook in arrivo all’inizio del 2026, ecco cosa aspettarsi

    30 Dic 2025

    “Quit Quitting”: Apple lancia i nuovi spot per Apple Watch in vista del 2026

    30 Dic 2025

    La prima medaglia del 2026 per l’Apple Watch Activity Challenge si potrà vincere dal 7 Gennaio!

    17 Dic 2025

    Apple rilascia macOS Tahoe 26.2, watchOS 26.2 e tvOS 26.2

    13 Dic 2025

    Apple Watch domina la classifica Strava 2025

    4 Dic 2025

    Pages, Numbers, Keynote e Freeform diventano app freemium

    13 Gen 2026

    Apple annuncia l’arrivo di Pixelmator Pro su iPad

    13 Gen 2026

    Apple lancia Creator Studio: la nuova suite di app professionali in abbonamento, con intelligenza artificiale

    13 Gen 2026

    Accordo AI tra Apple e Google: cosa cambia per la privacy degli utenti

    13 Gen 2026

    Pages, Numbers, Keynote e Freeform diventano app freemium

    13 Gen 2026

    Apple annuncia l’arrivo di Pixelmator Pro su iPad

    13 Gen 2026

    Apple lancia Creator Studio: la nuova suite di app professionali in abbonamento, con intelligenza artificiale

    13 Gen 2026

    Accordo AI tra Apple e Google: cosa cambia per la privacy degli utenti

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

iSpazio TrashApp – iSpazio Developer Program #3

Andrea BusiDi Andrea Busi5 Set 2008Commenta9 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 per un nuovo tutorial dell’iSpazio Developer Program.

Abbiamo notato con grande piacere che gli scorsi tutorial hanno avuto un buon successo, e molti utenti si sono cimentati nella programmazione dell’iPhone. Alcuni, giustamente, chiedevano maggiori spiegazioni, insomma, erano più orientati ad un vero e proprio corso. Il nostro obbiettivo, però, non è quello di fornire un corso preciso e dettagliato, perchè finiremmo solo con l’annoiare i più, che non lo leggerebbero nemmeno. Ecco perchè noi cerchiamo di proporre brevi esempi, carini, divertenti ma soprattutto concreti, per creare una piccola applicazione e fornire una panoramica generale sugli strumenti e sulle funzioni dell’iPhone SDK. Sta all’utente smaliziato e curioso andare a vedere la documentazione ufficiale (che non manca sul sito di Apple) e capire a fondo i meccanismi dell’SDK.
Se però molti di voi volessero qualche lezione più orientata sul lato0 teorico, fatelo presente nei commenti e vedremo di organizzare qualcosa. Dopo avervi annoiato con questa premessa, vediamo di iniziare il tutorial vero e proprio.

In questa “terza puntata” realizzeremo una’applicazione che ci darà un’infarinatura sulla gestione delle immagini. Vedremo, infatti, come creare un finto cestino, in cui potremo trascinare un documento, e da cui potremo ripristinare il file eliminato. Ovviamente non andremo a toccare veri file salvati sul nostro dispositivo, si tratterà di una semplice animazione.

TUTORIAL:

  1. Creiamo un nuovo progetto
  2. Aggiungiamo i componenti grafici
  3. Colleghiamo gli oggetti con le azioni
  4. Aggiungiamo la gestione dello spostamento del logo
  5. Implementiamo l’effetto “cancellazione”
  6. Aggiungiamo la funzione al tasto “Ripristina”

1. Creiamo un nuovo progetto

Aprimo Xcode, selezioniamo “File -> New Project”. Nel menù che ci appare selezioniamo “ViewBased Application”, clicchiamo su “Choose…” e immettiamo come nome “TrashApp” e fate clic su “Save”. Abbiamo così creato il nostro nuovo progetto.

2. Aggiungiamo i componenti grafici

Nella cartella del progetto entrate in “Resources” e fate doppio clic sul file “MainWindow.xib”, si aprirà l’Interface Builder. Ora, aprite la Libreria (dal menù “Tools -> Library”), scegliete l’oggetto “View” e trascinatelo all’interno della vista della vostra applicazione. Dovreste avere una schermata come questa:

Ora dobbiamo sistemare le parti grafiche della nostra applicazione. Per prima cosa ci servono due immagini per il nostro cestino, una con il cestino vuoto e una con il cestino pieno. Eccovele, ovviamente in puro stile Mac (potete benissimo utilizzare altre immagini a vostro piacimento):

Ora ci serve un qualcosa da eliminare. Un foglio, un documento o, visto che siamo in ambiente Mac.. un logo di Windows!! Eccovi quindi il file in questione:

Dobbiamo, adesso, assemblare il tutto all’interno della nostra applicazione. Salvate le immagini che vi abbiamo postato e copiatele all’interno della cartella del vostro progetto. Avrete quindi una cartella così composta:

Ora, tenendo aperta la finestra del Finder, trascinate le tre immagini nel vostro progetto in Xcode, vi apparirà la seguente finestra:

Fate click su “Add”, assicurandovi che ci sia la spunta accando al progetto “TrashApp”. Vedrete così le tre immagini comparire nel vostro progetto.
Tornate ora in Interface Builder e aggiungete alla vostra vista due componenti “UIImageView” e un “Round Rect Button”, in modo da avere un layout simile a questo:

ATTENZIONE: assicuratevi che la prima UIImageView che inserite vada nella posizione in basso, altrimenti avrete dei problemi nelle fasi successive del tutorial.

Ora dobbiamo collegare i vari componenti alle immagini che abbiamo appena scaricato. Clicchiamo sul primo componente UIImageView (quello più in alto, ma il secondo che avete inserito!), apriamo il pannello “Attributes Inspector” dal menu “Tools”. Nel menù a tendina “Images” selezioniamo il file “windows icon.png”, e lo vedremo comparire anche nell’applicazione. Spuntiamo, inoltre, la casella “User Interaction Enabled”. Avremo un pannello così impostato:

Facciamo la stessa cosa per la UIImageView sottostante, selezionando come immagine “TrashIconEmpty.png”, ma senza spuntare “User Interaction Enabled”.
Inseriamo all’interno del bottone la scritta “Ripristina”, aggiustiamo le dimensioni e la posizione delle due immagini fino ad avere un risultato come questo:

3. Colleghiamo gli oggetti con le azioni

Per ora non abbiamo definito nessuna azione, ci siamo limitati ad aggiungere i componenti grafici che ci serviranno. Vediamo di colmare queste lacune.

Sempre in Interface Builder cliccate sullo sfondo dell’applicazione, e dalla finestra “Attribute Inspector” entrate nella sezione “View Identity”.
Nel campo “Class” scrivete “MainView”, nella sezione “Class Outlets” fate due clic sul pulsante “+” per aggiungere due elementi. Il primo rinominatelo in “paperView”, il secondo in “trashView”, e in entrambi i tipi inserite “UIImageView”. Cliccate, poi, sul “+” della sezione “Class Actions”, rinominando il nuovo elemento in “restore:”.
Dovreste avere, quindi, una schermata come questa:

Ora dobbiamo connettere gli elementi con le azioni appena create. Andiamo nella scheda “Connections” (sempre in “Attribute Inspector”), vedremo i due elementi (paperView e trashView) che abbiamo appena creato. Clicchiamo sul pallino che troviamo a fianco e trasciniamo paperView sul logo di Windows, mentre trashView sull’immagine del cestino. Dovremmo avere questo risultato:

Clicchiamo, ora, sul pulsante della nostra applicazione, e, sempre in “Attribute Inspector” andiamo ancora nella sezione “Connections”. Troviamo la voce “Touch Up Inside” e trasciniamo il pallino sullo sfondo della nostra applicazione. Si aprirà questo piccolo menù:

clicchiamoci e vedremo che verrà creata la connessione.

Salviamo il tutto dal menù “File -> Save”. Controlliamo che la classe “Main View” sia selezionata, facendo clic sullo sfondo dell’applicazione e, nella scheda Identity, assicuriamoci di vedere “Main View” dove lo abbiamo scritto noi in precedenza.

Ora dobbiamo salvare questa classe nel nostro progetto. Dal menù “File” selezioniamo “Write Class Files”. Si aprirà una finestra in cui dovremo selezionare il percorso del nostro progetto, poi la cartella “Classes” e infine fare clic su “Save”.

Nella schermata che apparirà subito dopo selezioniamo il nostro progetto “TrashApp” e poi clicchiamo su “Add”.

Ora possiamo chiudere l’Interface Builder e tornare ad Xcode.

4. Aggiungiamo la gestione dello spostamento del logo

Vedremo che la classe “Main View” che abbiamo appena salvato è presente nel progetto. Prendiamo i due file (uno con estensione “.h”, l’altro “.m”) e trasciniamoli nella sottocartella Classes.

Adesso inziamo a inserire un po’ di codice. Entrate nel file “MainView.h” e rendetelo così:

Ora apriamo il file “MainView.m”. Dobbiamo implementare la funzione che gestirà l’applicazione quando l’utente toccherà il logo di Windows che vorrà eliminare. Per fare ciò dobbiamo implementare il metodo “touchesMoved”. Per chi volesse vedere la documentazione ufficiale, non deve far altro che andare nel menù “Help -> Documentation” e cercare il metodo appena presentato.
Dovremo aggiungere, inoltre, il metodo “touchesEnded”. Il codice sarà quindi così fatto:

Cosa facciamo con il primo metodo? Semplice. Salviamo nella variabile “touch” l’evento che l’utente compie toccando un qualsiasi oggetto della nostra applicazione. Controlliamo, poi, che l’oggetto toccato corrisponda a “paperView”, cioè al logo di Windows: se l’oggetto è proprio quello, teniamo il centro dell’oggetto (che nel frattempo viene mosso dall’utente) con la posizione del dito sullo schermo. Ovvero, è come se spostassimo fisicamente l’oggetto con il nostro dito e lo muovessimo su un piano.

Proviamo a cliccare su “Build and Go”: l’applicazione partirà e noi potremo trascinare per tutto lo schermo il logo di Windows. Come possiamo subito notare, se passiamo il logo sopra il cestino non succede niente, così come il pulsante “Ripristina” non ha nessun effetto. Vediamo di aggiungere, quindi, le funzionalità mancanti.

5. Implementiamo l’effetto “cancellazione”

Dobbiamo, ora, aggiungere una funzione che permetta di eliminare il logo di Windows quando esso passa sopra il cestino. Iniziamo scrivendo il seguente codice nel file “MainView.m” (dobbiamo aggiungere il codice al metodo che abbiamo creato in precedenza):

In questo metodo diciamo semplicemene che se il frame di paperView (ovvero il logo di Windows) è contenuto in quello del cestino, deve essere chiamato il metodo throwAway. Prima di chimaare tale metodo, inoltre, cambiamo l’immagine del cestino vuoto con quella del cestino pieno (caricandola dal file “TrashIconFull.png”).
Dobbiamo, quindi, definire proprio questo metodo. Aggiungiamo la dichiarazione nel file “MainView.h” nel seguente modo:

Ora ritorniamo nel file “MainView.m” e scriviamo la seguente implementazione del metodo:

In questo codice definiamo l’animazione che avrà il logo di Windows quando verrà sposato sopra il cestino, ovvero scomparirà.

Ora dobbiamo solo aggiungere un framework al nostro progetto, altrimenti otteremo due errorei in fase di compilazione. Per fare cio, cliccate con il tasto destro (oppure Ctrl + click) sulla cartella “Frameworks” del progetto, e ciccate su “Add -> Existing Frameworks”

Nella finestra che vi si apre, navigate fino a questo percorso:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/System/Library/Frameworks

Quando arrivate in quella cartella selezionate “CoreGraphics.framework” e cliccate su “Add”. Nella finestra successiva assicuratevi di spuntare il progetto in cui siamo lavorando:

Ora clicchiamo su “Build and Go” e proviamo la nostra applicazione. Se trasciniamo il logo di Windows sul cestino esso scompare!
Nota: se non avete questa animazione, controllate due cose. La prima è che il logo di Windows non si nasconda dietro il cestino. Se così fosse, non avete seguito quello che vi ho detto nella costruzione dell’Interfaccia!! Ma non ndisperate, vi basterà entrare in Interface Builder e scambiare l’ordine dei due componenti (ovviamente invertendo anche le immagini e le proprietà associate). La seconda, invece, che la dimesione del logo (sempre in Interface Builder) e del componente UIImageView non sia maggiore di quella del cestino, altrimenti il controllo che abbiamo scritto nel metodo “touchesEnded” fallisce e non viene lanciata l’animazione. Anche in questo caso ci basta entrare in Interface Builder e ridimensionare il componente UIImageView.

6. Aggiungiamo la funzione al tasto “Ripristina”

Ora non ci resta che aggiungere al funziona al bottone “Rispristina”, che per ora non esegue nessuna azione. Dobbiamo solo implementare il metodo “restore”, che dovreste già trovare dichiarato nel file “MainView.m”. Il codice da aggiungere è il seguente:

Cosa esegua questo metodo si può inture facilmente. Eseguiamo un’animazione inversa rispetto a quella dell’eliminazione del logo, riportando l’immagine alla sua posizione originale (che fissiamo noi), e torniamo a cambiare immagine del cestino, questa volta rimettendo quella del cestino vuoto.

Clicchiamo ora su “Build and Go” e gustiamoci la nostra nuova applicazione funzionante!

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

La guida è stata creata in italiano da Andrea Busi per iSpazio.net. Trovare il video tutorial originale a questo indirizzo: TrashTutorial – iPhone DevCentral. I meriti quindi relativamente alla versione inglese, 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  
  • Filtra:
  • Tutte
  • Minimo Storico
  • Amazon
  • Casa e cucina
Amazon Music Unlimited: Gratis per 3 mesi – Streaming illimitato senza pubblicità, qualità del suono superiore e download offline
In Evidenza
Amazon Music Unlimited: Gratis per 3 mesi – Streaming illimitato senza pubblicità, qualità del suono superiore e download offline33,00€Gratis
25%  
ECOVACS DEEBOT N30 PRO OMNI Robot Aspirapolvere e Lavapavimenti, 10000Pa di Aspirazione, TruEdge Adaptive Edge Mopping, Tecnologia ZeroTangle 2.0, Lavaggio del Mocio con Acqua Calda a 60°C, Bianco
00:04
ECOVACS DEEBOT N30 PRO OMNI Robot Aspirapolvere e Lavapavimenti, 10000Pa di Aspirazione, TruEdge Adaptive Edge Mopping, Tecnologia ZeroTangle 2.0, Lavaggio del Mocio con Acqua Calda a 60°C, Bianco399,00€299,00€

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
Condividi Facebook Twitter Telegram WhatsApp Threads Email Copia Link
Articolo precedenteCycorder 0.9-4 – Update | Cydia
Articolo successivo QuickGold 0.9.0 | Cydia

Articoli correlati

Apple supera Samsung nel mercato globale degli smartphone, non solo grazie a iPhone 17

12 Gen 2026Commenta

Il designer dell’ iPhone Air lascia Apple e approda nella startup AI Hawk

8 Gen 2026Commenta

iPhone 17e: tornano le voci su Isola dinamica e chip A19

7 Gen 2026Commenta

iPhone con fotocamera da 200MP: secondo Morgan Stanley arriverà nel 2028

7 Gen 2026Commenta

Leggi o Aggiungi Commenti

Advertising

Da non perdere!

Apple lancia Creator Studio: la nuova suite di app professionali in abbonamento, con intelligenza artificiale

13 Gen 2026

Apple rilascia le seconde beta di iOS 26.3 e iPadOS 26.3 per gli sviluppatori

12 Gen 2026

Apple e Google: arriva la conferma di un accordo storico che vedrà Gemini alla base di Apple Intelligence e Siri

12 Gen 2026

Roadmap Apple 2026–2027: ecco tutti i dispositivi in arrivo

17 Dic 2025

Gli articoli più letti

Pages, Numbers, Keynote e Freeform diventano app freemium

Apple annuncia l’arrivo di Pixelmator Pro su iPad

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.