In questi giorni mi sono dato alla validazione di un form per una app su iPad.

I controlli erano più o meno i soliti: password, email, codice fiscale, ecc....

Per eseguire questi controlli mi sono creato una classe con dei metodi static da richiamare nel form.

Vi posto uno di questi metodi per vedere come usare le espressioni regolari in Objective-C.

Può capitare spesso di dover prendere dei dati da un file di testo nelle nostre app per iPhone/iPad.

Farlo in verità è molto semplice.

Aggiungete un file di testo al vostro progetto (file.txt ad esempio) e scriveteci qualcosa dentro.

Poi andate nel file .h del vostro controller:

#import <UIKit/UIKit.h>

@interface MyController: UIViewController {   
    NSString *fileTxt;
    NSString *textFromFile;
}

@end

Due semplici NSString.

Quando si crea un sistema di registrazione e login, con qualsiasi linguaggio si tratti, è sempre bene salvare l'hash della password, e non la password in chiaro.

Oggi vediamo come calcolare l'hsh MD5 di una NSString in Objective-C.

L'SDK per iPhone e iPad già dispone gli strumenti adatti per usare MD5.

Bisogna solo attivarli.

Create una classe apposita; la mi si chiama StrMD5.

L'interfaccia sarà così:

#import <Foundation/Foundation.h>

@interface NSString (StrMD5)

- (NSString*) MD5;

@end

Come vedete l'interfaccia è dichiarata come estensione di NSString.

In questi giorni di vacanza ho ripreso un pò in mano l'Objective-C.

Non per iPhone o iPad, ma per un piccolo programmino per Mac (anche se poi le cose sono abbastanza intercambiabili).

Quello che vediamo è come impostare lo sfondo di una NSImage prendendo l'immagine dal web.

Quindi, alla vostra interfaccia aggiungete un oggetto NSImage e poi collegatelo:

// AppDelegate.h

#import <Cocoa/Cocoa.h>

@interface AppDelegate : NSObject <NSApplicationDelegate> {
  IBOutlet NSImageCell *myImage;
}

@property (assign) IBOutlet NSWindow *window;

@end

Come vedete l'oggetto da linkare, per essere precisi, è NSImageCell.

Invece in Interface Builder dovete trascinare un oggetto Image Well (che poi creerà anche l'oggetto Image Cell al suo interno).