Nell’ultima release di WP Bannerize ho introdotto un nuovo campo in tabella che indica quante volte un banner è stato “cliccato”. Per eseguire l’operazione di valore = valore +1 in SQL ho utilizzato:
1
| UPDATE tabella SET `campo` = `campo` + 1 WHERE id = id_record; |
Continua...
Spostare il doppio Tap sul simulatore
Il simulatore iPhone/iPad in Xcode permette di simulare il doppio tap con la pressione del tasto ALT. Questo è utile per simulare anche la funzione di Pinch, quella usata per ingrandire o allontare contenuti nelle view con scroll o in oggetti UIWebView. Ebbene, alcuni di voi avranno notato che la simulazione delle “due dita” procede in modo simmetrico partendo sempre dal centro dello schermo. Per muovere questo “centro” è sufficiente tenere premuto anche il tasto SHIFT.
Continua...
L’impostazione del selettore di fine animazione, eseguita con setAnimationDidStopSelector, su una classe UIView è estremamente versatile, come già visto in setAnimationDidStopSelector: usi diversi ed avanzati.
Lasciatemi ora che vi mostri una tecnica davvero comoda quando abbiamo animazioni multiple e/o vogliamo gestire delle code (queue) di animazioni.
Continua...
In Objective-C è possibile estendere una classe data in due modi: eseguendo un classico subclassing (leggi anche ereditarietà) o sfruttando le cosiddette Categorie.
Nota: esiste anche una terza via in Objective-C indicata con nome di Posing che potremmo definire un mix di subclass (perché definisce un nuovo nome) e Categorie (perché da un dato momento tutte le classi di un tipo si comportano come la nuova).
Continua...
Per memorizzare un’immagine nelle NSUserDefaults è sufficiente riuscire ad ottenere un puntatore NSData ai dati dell’immagine. In questo modo potremmo ricostruire la nostra immagine in qualsiasi momento successivo.
Nell’esempio mostrato qui sotto viene sfruttato un array che contiene al massimo 4 immagini. Ogni immagine nuova viene messa in testa e quella in eccesso eliminata.
Continua...
Come molti programmatori usano fare, anch’io mi costruisco le mie librerie di funzioni pronte per essere riutilizzate in più progetti e in più contesti. Lasciatemi passare il titolo di questo post, forse un po’ azzardato ma, tuttavia, come vedremo, non lontano dalla realtà.
In Objective-C è possibile scrivere e chiamare codice C/C++, compreso l’assembly se è per questo. Questa sua caratteristica lo rende un linguaggio davvero versatile e, per certi aspetti, fenomenale. Da un lato, infatti, è possibile utilizzare e apprezzare la sintassi prettamente Objective-C, dall’altro è possibile eseguire velocemente porting di codice scritto in ANSI C (magari per Digital Unix o Sun) e utilizzarlo comodamente nelle nostre applicazioni iPhone o iPad; per non parlare di tutto il Kernel BSD già disponibile su Mac OS X!
Continua...
La classe UIView espone un puntatore al layer (CALayer), un oggetto di più basso livello con innumerevoli potenzialità. Il layer mette a disposizione tutta una serie di metodi e proprietà legati alla visualizzazione del contenuto della view. Ad esempio è possibile manipolare il contenuto di una view nello spazio tridimensionale. Nell’esempio che riporto è interessante notare che il codice è semplice, e il tutto è realizzato sfruttando Interface Builder:

Continua...
Non sono solo i browser dei desktop o portatitli a navigare sui siti da noi realizzati, ormai l’era del mobile – del browser mobile – è diffusa, grazie a device come l’Apple iPhone, iPad, Android, etc… Inoltre, anche per chi sviluppa per Apple iPhone è diventato obbligatorio capire su quale device l’applicazione sta girando.
Sul Web la situazione è simile a quella esposta in Browser o Mobile Browser?, con la variante:
Continua...
In Very short snippet: rimuovere lo scroll da un oggetto UIWebView avevamo visto come era possibile rimuovere lo scroll da un oggetto UIWebView:
Continua...
Il form presentato dopo una ricerca in bbPress permette di raffinare i risultati indicando il forum su cui cercare. Il combo con la lista dei forum, purtroppo, presenta un “grossolano” errore a livello di kernel. Il tag select, infatti, viene nominato con forum-id invece del corretto forum_id. Questa issue è stata già segnalata al team di sviluppo! Ben nove mesi fa.
Continua...
Ultimi Commenti
Marco: Ti ringrazio moltissimo, mi hai illuminato
ho risolto impostando [cc_objc] //OptionViewController.m -...
Giovambattista Fazioli: @Marco: Ti consiglio un approccio credo più corretto. Se hai eseguito il subclass del tab...
Marco: Scusa lo spam.. ho notato che c’è un errore.. ecco la correzione [cc_objc] /** PrimaClasse.h **/ #import...
Marco: dimenticato.. in [cci]OptionViewController[/cci ] il [cci]@syntetize[/cci] del delegato l’ho messo
luigi: molto chiaro e semplice devo ammettere che anche scrivendo da un pà difficilmente uso delegati creati da...