Autore archivio

Scritto da Lucio Brucio Il gennaio - 14 - 2012 0 Commenti

 

La status bar è una barra presente sullo schermo dell’iPhone/iPad e rappresenta informazioni quali stato di carica della batteria, l’ora corrente e ricezione del segnale di rete. Sebbene speso è bene che questa barra sia visibile, a volte è necessario non visualizzarla, per fare questo sulle nostre applicazioni iOS ci sono due metodi:

  1. Impostare la proprietà di visibilità della status bar tramite il file info.plist
  2. Nascondere la status bar da codice dopo il caricamento dell’applicazione

Ovviamente in base alle nostre esigenze utilizzaremo il caso migliore. Vediamo il primo caso:

Nascondere la status bar nelle applicazioni iOS

Nascondere la status bar nelle applicazioni iOS

Utilizzare UIStatusBarHidden

Per nascondere sin dall’inizio del caricamento dell’applicazione lastatus bar è necessario impostare nel file info.plist una chiave del tipo: UIStatusBarHidden. XCode riconoscerà automaticamente questo valore sostituendolo con “Status bar is initially hidden” rendendolo un valore booleano che noi possiamo impostare a YES oppure a NO (di default è a NO). Inpostanto questo valore a YES la status bar non sarà mai visibile nemmeno durante il caricamento dell’applicazione.

 

Nascondere la Status Bar da codice

Se si vuole nascondere la status bar solo in casi particolari e non sempre, allora è possibile nasconderla attraverso il codice una volta caricata l’applicazione. Nell’esempio seguente si nasconde la Status Bar nel metodo didFinishLaunchingWithOptions che indica all’application delegate che il caricamento dell’applicazione è terminato, come pe:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    /*... codice di inizializazione dell'applicazione */

    [application setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];

    return YES;
}

In questo metodo abbiamo l’istanza della classe UIApplication come parametro. Se vogliamo nascondere la Status Bar da un altra parte del codice a seconda delle nostre esigenze allora dobbiamo ricavare l’istanza dell’oggetto UIApplication che rappresenta la nosta applicazione nel seguente modo:

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];

 

Rating 3.00 out of 5
Scritto da Lucio Brucio Il luglio - 20 - 2011 2 Commenti
vettriano

Jack Vettriano

Il grandioso Jack Vettriano, il mio artista preferito… L’uomo che dipinge scene sensuali, che ritrae fotografie dalla forte componente erotica.. Lo scozzeze fumatore! Sir Jack Hoggan, questo è il suo vero nome, insignito dell’eccellentissimo ordine dell’impero britannico è l’uomo che ultimamente mi disturba… non riesco a fare a meno di vedere e rivedere i suoi dipinti, continuamente… è diventata un ossessione…

Bio

Jack Vettriano nasce nella città di Fife in scozia nel 1951, comincia il suo lavoro in miniera da giovanissimo, lavoro che durerà per tutta la sua ascesa al successo! All’età di 21 anni comincia a dipingere con un set di acquerelli donato dalla sua ex fidanzata e fu l’inizio di una rivoluzione che ha cambiato la storia dell’arte scozzese e non solo. Di ispirazione impressionista, Jack Vettriano si rifà molto allo stile del realista americano Edward Hopper e solo nel 1988 si sente maturo per esporre in modo professionale le sue opere alla Royal Scottish Accademy. Susseguirono una serie di successi molto importanti tra cui è da ricordare la vendita da parte di Sotherby, del ‘The Singing butler” per una cifra astronomica, evento che consacrò la sua carriera.

Attualmente Vettriano plasma le sue opere nei suoi laboratori d’arte in Scozia, Londra e Nizza.

 

The singing butler

The singing butler

The singing butler battuto da Sotherby a 744.800 sterline!

E’ questo il titolo del dipinto più celebre di Vettriano, “The singing butler”, questa opera è protagonista di un evento straordinario. Il dipinto emblematico rappresentano un uomo e una donna che ballano un valzer sulla spiaggia, mentre una cameriera e un maggiordomo li fiancheggiano tenendo due ombrelli protesi verso l’alto. Come molti dipinti di Vettriano nella scena aleggia un alone di mistero, i volti dei protagonisti sono nascosti, rivolti altrove non verso l’osservatore, al quale spetta il compito di stabilire le regole della composizione. Sta al pubblico stabilire perché i protagonisti stanno ballando al canto di un maggiordomo, perché sulla spiaggia con un tempo cosi poco promettente, e secondo voi il maggiordomo sta cantando per i ballerini o per l’amante cameriera? Questo manufatto di Vettriano come molti altri può essere concepito come l’inizio, il mezzo o la fine di una malinconica scena fondata sull’amore, la sensualità, l’inquietudine dei protagonisti impersonali.

Nell’Aprile del 2004 presso la Hopetoun House ad Edimburgo, Sotheby ha messo all’asta 14 dipinti di Vettriano tra cui “The singing butler” con una base d’asta compresa tra 150.000 e 200.00o sterline. I pochi fortunati ad essere ammessi alla sala sono stati protagonisti di un evento storico: dopo una serie di rilanci l’opera fu battuta a 744.800 sterline! L’identità del compratore è tutt’ora ignota ma si parla di un collezionista d’arte scozzese residente nel regno unito. Tutti i quadri di Vettriano furono venduti a prezzi che superavano del doppio o addirittura del triplo il prezzo stimato.

Riferimenti

www.jackvettriano.com

it.wikipedia.org/wiki/Jack_Vettriano

www.heart-break.co.uk

Jack Vettriano

Jack Vettriano – Studio Life

Jack Vettriano – A man’s world

Jack Vettriano – Woman world

 

Rating 3.00 out of 5
Scritto da Lucio Brucio Il maggio - 29 - 2011 0 Commenti

 

Questo lavoro è la riproduzione digitale di “Cristo davanti Pilato” di Matthias Stomer, l’ho completato in circa 10 ore di lavoro totali.

 

 

Cristo davanti Pilato

Digital painting - Cristo davanti Pilato

 

 

 

Comunemente inglobata nell’arte digitale o nell’arte visiva, la pittura digitale utilizza strumenti tecnologici che simulano il tratto del pennello reale. I numerosi software creati appositamente a tale scopo possiedono ormai una vastissima libreria di pennelli, tratti e tecniche di ogni tipo: dalla tempera, all’olio, all’acquerello, all’aerografia e così via. Anche le tavolozze dei colori hanno una gamma vastissima, e pressoché infinita di scelte possibili. Rimane l’annoso problema della stampa, là dove si ritiene di voler o dover stampare le proprie opere. La qualità di stampa, anche se ha raggiunto livelli molto alti, rimane in molti punti una scelta e un’operazione difficili, come ben sanno coloro che tentano di riprodurre in catalogo le opere tradizionali. Ottenere infatti in stampa il colore esatto percepito su un dipinto o a video è tuttora molto difficile se non impossibile.

 

Rating 3.00 out of 5
Scritto da Lucio Brucio Il aprile - 12 - 2011 1 Commento

Copia di ‘Round Midnight’ di Jack Vettriano, il mio Artista preferito!!

Round Midnight (Jack Vettriano) by Lucio Brucio

Round Midnight (Jack Vettriano) by Lucio Brucio

Rating 4.00 out of 5
Scritto da Lucio Brucio Il aprile - 12 - 2011 0 Commenti
50° anniversario del primo uomo nello spazio

50° anniversario del primo uomo nello spazio

Oggi google festeggia il 50° anniversario del primo viaggio nello spazio!

Ecco il link: http://www.google.it/#q=Yuri+Gagarin&ct=firstmaninspace11-hp&oi=ddle&fp=949f940cda3b90b1

Il primo uomo ad entrare in orbita fu il russo Yuri Gagarin. Nel 1961 il 12 Aprile alle ore 9.07 il maggiore Gagarin inizio la sua orbita storica, un percorso ellittico che viene scritto ora su tutti i libri di storia. Il viaggio durò 88 minuti e la navicella Vostok 1 raggiunse un altitudine massima di 308 km all’apogeo!

Gagarin ora riposa al Cremlino dopo essersi schiantato nel 1968 con un caccia, solo 7 anni dopo la sua storica missione in orbita.

Rating 3.00 out of 5
Scritto da Lucio Brucio Il marzo - 22 - 2011 6 Commenti

Qualche breve breve consiglio introduttivo per poter utilizzare il dispositivo di ricezione del segnale GPS presente sugli apparecchi targati Apple!  Per poter utilizzare il dispositivo GPS sull’iOS bisogna importare nella nostra applicazione il framework Core Location, per fare questo bisogna selezionare il menu “Add” e poi “Existing framework” dal menu di progetto come mostrato nell’immagine seguente:

Importare un framework esistente

Importare un framework esistente

Dall’elenco che apparirà in seguito bisogna selezionare CoreLocation.framework. Fatto questo la nostra applicazione è pronta per poter utilizzare il GPS. I dispositivo GPS comunica con la nostra applicazione attraverso gli eventi generati da iOS come la maggior parte dei dispositivi, quindi in generale per pote ricevere le coordinate geografiche bisognerà avviare il dispositivo e assegnare un “delegato” al dispositivo che risponderà a tutti gli eventi generati. Le cose da fare in pratica sono le seguenti prima di tutto dire alla nostra classe principale che dobbiamo usare il framework Core Location con il seguente import:

#import <CoreLocation/CoreLocation.h>

in questo modo possiamo accedere alle classi del framework. Per indicare all’applicazione che dovrà “ascoltare” gli eventi generati dal dispositivo GPS dobbiamo implementare l’interfaccia CLLocationManagerDelegate. La classe principale che ci permetterà di attivare il nostro dispositivo GPS è CLLocationManager quindi si dichiarerà una proprietà della classe principale:

CLLocationManager *locationManager;
@property (nonatomic, retain) CLLocationManager *locationManager;

Per inizializzare l’oggetto locationManager, dopo l’inizializzazione dell’applicazione, quindi nel metodo didFinishLaunchingWithOption, possiamo inserire il seguente codice:

if (self.locationManager == nil){
    self.locationManager = [[CLLocationManager alloc]init];
    [self.locationManager setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
    [self.locationManager setDelegate:self];
    [self.locationManager startUpdatingLocation];
}

In questo codice è stata impostata l’accuratezza del segnale di rilevamento posizione, ovviamente più è accurato e più consuma batteria, dopo di che si imposta il delegate che ascolterà gli eventi, cioè self. Come ultima riga avviamo l’aggiornamento della posizione e qua si comincia a ciucciare la batteria.

Appena la posizione corrente sarà aggiornata verrà richiamato il seguente metodo dell’interfaccia CLLocationManagerDelegate che andremo a sovrascrivere:

-(void) locationManager: (CLLocationManager *)manager didUpdateToLocation: (CLLocation *) newLocation fromLocation: (CLLocation *) oldLocation{
    [self.locationManager stopUpdatingLocation];
    NSLog(@"LOCATION: %d,%d", locationManager.location.coordinate.latitude, locationManager.location.coordinate.longitude);
}

All’interno di questo metodo prima di tutto fermiamo l’aggiornamento della posizione (che la batteria serve…) dopo di che possiamo utilizzare la posizione rilevata, in questo caso viene semplicemente loggata!

Credo che con questa brevissima introduzione si ha un minimo di base per poter utilizzare la geolocalizzazione in tutte le vostre applicazioni iOS!!!

Dovrebbe essere tutto… Ciao! :cool:

Rating 3.00 out of 5
Scritto da Lucio Brucio Il marzo - 2 - 2011 1 Commento
Nel seguente articolo andremo a spiegare come personalizzare le celle di una vista a tabella, quindi di una UITableView, vista molto utilizzata nelle applicazioni per IOS.
In particolare per personalizzare una cella si sono due metodi principalmente, crearla con interfaccia grafica tramite Interface Builder oppure crearla attraverso il codice. Ovviamente crearla con IB è più semplice e si vede subito il risultato, ma il metodo risulta essere più lento, quindi per una cella va bene, ma se dobbiamo personalizzare l’intera lista conviene farlo attraverso il codice. Noi ovviamente andremo a scrivere un esempietto che ci permettere di customizzare una cella attraverso il codice, mettiamoci all’opera.

Creiamo il progetto

Apriamo XCode e creiamo un nuovo progetto dalla schermata iniziale, come template sceglieremo Navigation-based Application presente nel menu Application di IOS e chiamiamola “CustomCell:

Navigation based application

Navigation based application

A questo punto esplorando il progetto all’interno della cartella Classes ci troveremo due classi, l’application Delegate, cioè la classe principale dell’applicazione e una classe RootViewController. La classe RootViewContorller come si può notare estende la classe UITableViewController, quindi controlla tutto il comporta mento della vista caricate inizialmente. Se si lancia subito il progetto si visualizza una schermata con una UITableView è qua che noi andremo ad agire.

Ora dobbiamo dire alla UITableView che nella tabella è presente almeno una sezione e almeno una riga, altrimenti non visualizziamo nulla!!! Procediamo come segue:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {

return1;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

return1;

}

 

Il nome dei due metodi è autoesplicativo. Come abbiamo detto andremo a personalizzare la cella attraverso il codice. Per fare questo andremo a modificare il metodo “cellForRowAtIndexPath” che restituisce una cella per ogni riga di ogni sezione. Andiamo ad inserire gli elementi di personalizzazione all’interno della nostra cella:

 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

   static NSString *CellIdentifier = @”Cell”;

   UITableViewCell *cell = [tableViewdequeueReusableCellWithIdentifier:CellIdentifier];

   if (cell == nil) {

      cell = [[[UITableViewCellalloc] initWithStyle:UITableViewCellStyleDefaultreuseIdentifier:CellIdentifier] autorelease];

}

//creiamo il contenitore della cella

cell.contentView.frame = CGRectMake(0, 0, 320, 60);

//Aggiungiamo una label alla cella nella posizione x=10, y=10 con height=25 e width= 120

UILabel* text = [[UILabelalloc] initWithFrame:CGRectMake(10, 10,120, 25)];
//con background trasparente

text.backgroundColor = [UIColorclearColor];
//font size = 18 e allineamento a sinistra

text.font = [UIFontsystemFontOfSize:18];

text.textAlignment = UITextAlignmentLeft;
//aggiungiamo la label alla cella

[cell.contentView addSubview:text];

[text release];

//aggiungiamo un immagine di sfondo (image.png deve essere aggiunta al progetto)

UIImage* cellBackground = [UIImageimageNamed:@"image.png"];

UIImageView* background = [[UIImageView alloc] initWithImage:cellBackground];

background.frame = CGRectMake(0, 0, 320, 60);

[cell.contentView addSubview:background];

[background release];

return cell;

}

Il codice è opportunamente commentato e ovviamente nella cella è possibile aggiungere qualsiasi elemento in questo caso abbiamo aggiunto solo una label e un immagine di sfondo, provare per credere!

Credo che dovrebbe essere tutto… Ciao! :cool:

Rating 4.00 out of 5
Scritto da Lucio Brucio Il febbraio - 28 - 2011 2 Commenti

Ecco appena incorniciato il mio ultimo disegno a pastello, 24×33 su carta liscia 220g/mq

Cesto con uva e melograni

Cesto con uva e melograni

Rating 4.00 out of 5
Scritto da Lucio Brucio Il gennaio - 17 - 2011 3 Commenti

Quando nasce

Chiunque voglia entrare nel mondo della programmazione targato “Apple” inevitabilmente si imbatte nell’ objective-C. Questo linguaggio di programmazione, ovviamente orientato agli oggetti come descrive il nome, prende sempre più piede grazie alla diffusione degli apparati Apple venduti. L’objective-C venne partorito dalla Stepstone nel 1981 e fu progettato per essere un estenzione del C con degli accorgimenti in più rispetto al C++ (dinamic binding, run-time identification e persistenza).

Nel 1988 la NeXT, società fondata da Steve Jobs, il cofondatore della Apple, acquisisce la licenza dell’objective-C cedutagli dalla Stepstone. Più tardi nel 1996 la Apple incorpora la NeXT e con essa tutti i diritti associati all’objective-C ed è con tale linguaggio che la Apple tuttora implementa il suo sistema operativo non solo degli iMac ma anche di tutti i suoi dispositivi.

(continua…)

Rating 4.00 out of 5
Scritto da Lucio Brucio Il gennaio - 11 - 2011 0 Commenti

Altro lavoretto con photoshop… il soggetto è Kristen Stewart nei panni di Bella della saga “Twilight”

Bella di Twilight - Kristen Stewart

Bella di Twilight - Kristen Stewart


Rating 4.00 out of 5