Archiv Juli 2010


Sehr kurze Auszug: NSURL, und verschiedene mögliche

Gibt den Namen einer Datei aus dem Objekt NSURLRequest und erlaubt Ihnen, ob eine Verlängerung entscheiden:

Mehr ...

Saidmade restaurierung: viele Dienstleistungen in mehr

Nach Tagen der "anstrengenden" Arbeit haben wir endlich die neue Version der Website "Business" veröffentlicht saidmade.com ! Es war hart, auch weil zunächst wir einige Dinge zu beheben wollte, aber dann - das Ende - wegen der manische Präzision Stigma unmittelbar betroffen ist, sind wir zusammengekommen, um einen wahren Remake des gesamten Site auszuführen. Hier finden Sie alle Neuigkeiten direkt in die neue Blog ! Lassen Sie mich nur einige aufzählen wichtige Änderungen, neben der Neugestaltung:

  • Reorganisation von allen Inhalten
  • Fähigkeit zur (kostenlosen) Zugang zu der Website für Boni, Downloads und Vorschauen Sperrgebieten registrieren
  • Join the Newsletter
  • Die Integration des Blog (bye bye labs)
  • und mehr ...
  • Mehr ...

Sehr kurze Auszug: bekommen, wie viele Beiträge, Seite und Anhang

Wie viele von euch wissen gut, die Tabelle wp_posts wird verwendet, um die WordPress Post, Seiten und Anhänge zu speichern. Der Typ des Elements gespeichert wird durch das Feld bestimmt post_type . . Mit select den Vorschlag unten, können Sie "zählen" individuell die verschiedenen Arten von Elementen in memrizzate wp_posts .

Mehr ...

Sehr kurze Auszug: Aufnahme eines Bildes in der Foto-Album

Einfache Möglichkeit, um ein Bild auf dem Foto des Geräts innerhalb unserer Anwendung (oder geladen remote) zu speichern:

Mehr ...

NSURLConnection: Anwendungsbeispiel

NSURLConnection ermöglicht, eine Verbindung cotrollata zu einem Remote-Server auszuführen. Um es zu verwenden:

1
2
3
4
5
6
7
8
9
10
11
/ / Die Objekte aus, um eine NSURLConnection durchführen
urlConnection; NSURLConnection * URLConnection;
mutableData; NSMutableData mutableData *;

/ / ...

urlString = @ "http://www.miodominio.com/documento.txt" ; NSString * urlString @ = "http://www.miodominio.com/documento.txt";

urlRequest = [ NSURLRequest requestWithURL : [ NSURL URLWithString : urlString ] ] ; NSURLRequest urlRequest * = [ NSURLRequest requestWithURL: [ NSURL URLWithString: urlString]];
/ / Der Delegierte wird, um die Verbindung Staaten reagieren
NSURLConnection alloc ] initWithRequest : urlRequest delegate : self ] ; URLConnection = [[ NSURLConnection alloc] initWithRequest: URLRequest Delegierter: self];

Hier sind die Delegierten Methoden, um den Status der Verbindung überprüfen:

[Cc_objc]

Mehr ...

Sehr kurze Auszug: Objective-C, Selector aus NSString

Objective-C ist eine wunderbare Sprache, mit dem Sie erstaunliche Dinge tun können. Einer der interessantesten Aspekte ist seine dynamische Aufruf von Methoden (Nachrichten). Es ist möglich, und zwar, um die Adresse einer Nachricht von einer Zeichenkette zu erhalten.

Mehr ...

Sehr kurze Auszug: UIWebView, und Anzeige von PDF-Dateien innerhalb

Die Aufgabe UIWebView für die Anzeige einer Vielzahl von Dateien verwendet werden. Zum Beispiel können Sie es verwenden, um anzuzeigen - wie auch QuickTime-Filme oder YouTube - PDF-oder HTML-Dateien in unserem eigenen Code.

Mehr ...

NSString

NSString ist eine sehr mächtige Klasse, lassen Sie mich Ihnen einige der am häufigsten verwendeten Eigenschaften:

printf ()

1
2
/ / Printf ()
output = [ NSString stringWithFormat : @ "%@ / %@" , @ "primo" , @ "secondo" ] ; NSString * output = [ NSString stringWithFormat: @ "% @ /% @", @ "ersten", @ "zweiten"];

Führen Sie die split ()

1
2
3
/ / Split () / explode ()
list = @ "Norman, Stanley, Fletcher" ; NSString * list = @ "Norman Stanley Fletcher";
listItems = [ list componentsSeparatedByString : @ ", " ] ; NSArray * ListItems = [Liste componentsSeparatedByString: @ ""];

Konvertieren von String an Wert

1
2
3
/ / Konvertieren
doubleString = @ "123" ; NSString * doubleString @ = "123";
[ doubleString doubleValue ] ; double-Wert = [doubleString doubleValue];

Innerhalb eines Strings

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/ / Substring
searchString = @ "age" ; NSString * searchString = @ "Alter";

beginsTest = @ "Agencies" ; NSString * beginsTest @ = "Agenturen";
[ beginsTest rangeOfString : searchString NSRange prefixRange = [beginsTest rangeOfString: searchString
NSAnchoredSearch | NSCaseInsensitiveSearch ) ] ; Optionen: (NSAnchoredSearch | NSCaseInsensitiveSearch)];

/ / PrefixRange = {0, 3}

endsTest = @ "BRICOLAGE" ; NSString * endsTest = @ "DIY";
[ endsTest rangeOfString : searchString NSRange suffixRange = [endsTest rangeOfString: searchString
NSAnchoredSearch | NSCaseInsensitiveSearch | NSBackwardsSearch ) ] ; Optionen: (NSAnchoredSearch | NSCaseInsensitiveSearch | NSBackwardsSearch)];

/ / SuffixRange = {6, 3}

Mehr ...

Sehr kurze Auszug: Komponieren E-Mails an einem iPhone, iPod oder iPad

Um eine E-Mail in iPhone / iPod komponieren fügen Sie einfach den Rahmen MessageUI . In unserem Controller zu geben die Einbeziehung des Rahmens und die Durchführung des Protokolls MFMailComposeViewControllerDelegate :

Mehr ...

Objective-C-Klasse Methoden und Selbstbestimmung alloc

davanti al prototipo, tipo: Wenn wir definieren und verwenden Methoden (Nachrichten) unter Objective-C, sind wir oft mit dem merkwürdigen Syntax, die ein Schild zeigt konfrontiert - oder + vor dem Prototyp ein:

1
2
3
4
5
6
7
/ / In der Definition
void ) mioMessaggio; - (Void) mioMessaggio;

/ / In ähnlicher Weise bei der Durchführung
void ) mioMessaggio { - (Void) {mioMessaggio
/ / ...
}

Oder:

1
2
3
4
5
6
7
/ / In der Definition
void ) mioMessaggio; + (Void) mioMessaggio;

/ / In ähnlicher Weise bei der Durchführung
void ) mioMessaggio { + (Void) {mioMessaggio
/ / ...
}

Der Unterschied liegt in der Tatsache, dass die von dem Symbol definiert - Verfahren zur Instanz sind, und dann mit einem Objekt verknüpft. Die Methoden, durch das Symbol definiert + werden als Klassen-Methoden, da sie ohne Zuweisung durchgeführt werden können und instanziieren das Objekt in Frage.

sono due classi, molto usate, che contengono svariati metodi di classe. NSString oder UIView gibt zwei Klassen, weit verbreitet, die mehrere Klassen-Methoden enthalten. Klassenmethoden werden ständig, wie wenn wir zu initialisieren oder ein beliebiges Objekt zuweisen verwendet:

1
[ UIView alloc ] ; MyView UIView * = [UIView alloc];

Die Methode alloc ist ein klassisches Beispiel, das in allen Objekten und, wie vom Kodex hervorgeht, ist eine Klassenmethode als vor der Zuweisung des Objekts selbst beansprucht.

Klasse Methoden können in vielen Fällen sinnvoll, insbesondere dann, wenn wir unser Objekt zu erstellen, und wir wollen und initialisieren Sie es in weniger Codezeilen möglich. Stellen Sie sich ein Array in einer Menge von Objekten von uns definierten sammeln. Wir definieren unsere erste Objekt, das Schreiben des Codes auf einfachste Weise, ohne Verwendung von Klassen-Methoden:

1
2
3
4
5
6
7
8
9
10
/ / Definition der Schnittstelle in myObject.h
# Import <Foundation/Foundation.h>

NSObject { @ Interface myObject: NSObject {
name; NSString * name;
lastname; NSString * Nachname;
}

nonatomic, retain ) NSString * name; @ Property (atomare, behalten) NSString * name;
nonatomic, retain ) NSString * lastname; @ Property (atomare, behalten) NSString * Nachname;

Die Umsetzung wird im einfachsten Fall kann es nichts sein, oder:

1
2
3
4
5
6
7
8
9
10
11
12
/ / MyObject.m

# Import "myObject.h"
@ Implementation myObject

@ Synthesize Name, Nachname;

void ) dealloc { - (Void) {dealloc
; [Name release];
; [Nachname release];
; [Super dealloc];
}

Wann werden wir unser Objekt verwenden werde, würden wir Code wie folgt verwenden:

1
2
3
[ myObject alloc ] ; myObject * obj = [myObject alloc];
"Mario" ; obj.name @ = "John";
"Rossi" ; obj.lastname @ = "Smith";

Wenn wir zu viele Objekte dieses Typs zu erstellen, und legen Sie sie in einer wollte NSArray , wird die Situation ein wenig umständlich:

1
2
3
4
5
6
7
8
9
10
11
12
[ myObject alloc ] ; objA myObject * = [myObject alloc];
"Mario" ; objA.name @ = "John";
"Rossi" ; objA.lastname @ = "Smith";

[ myObject alloc ] ; objB myObject * = [myObject alloc];
"Carlo" ; objB.name @ = "Charles";
"Bianchi" ; objB.lastname @ = "Smith";

elenco = [ NSArray arrayWithObjects : objA, objB, nil ] ; NSArray * list = [ NSArray arrayWithObjects: objA, objB, nil];

; [ObjA release];
; [ObjB release];

per aggiungere man mano gli oggetti nel nostro elenco. Es könnte den Code, indem Sie eine Schleife zu verbessern for oder mit Hilfe eines NSMutableArray als Objekte in unserem Verzeichnis hinzufügen. . Doch die Situation migliorebbe leicht, gelegentlich außerhalb des Eigentums Einstellungen bleiben name und lastname . Wäre dann spontan, zu starten, fügen Sie eine Methode - Objekt - initWithName , mit der Sie auf alle Einstellungen der Eigenschaften zu springen, semplificandoci Dinge ein wenig zu ermöglichen. Bei der Umsetzung Datei myObject.m hinzu:

1
2
3
4
5
6
7
id ) initWithName : ( NSString * ) stringName lastname : ( NSString * ) stringLastname { - (Id) initWithName: ( NSString *) Stringname Nachname: ( NSString *) {stringLastname
self = [ super init ] ) { if (self = [super init]) {
self.name = Stringname;
self.lastname = stringLastname;
}
Selbst zurückkehren;
}

Dabei haben wir die Situation verbessert, können sie nun schreiben:

1
2
3
4
5
6
7
[ [ myObject alloc ] initWithName : @ "Mario" lastname : @ "Rossi" ] ; objA myObject * = [[myObject alloc] initWithName: @ "Mario" Nachname: @ "Smith"];
[ [ myObject alloc ] initWithName : @ "Carlo" lastname : @ "Bianchi" ] ; objB myObject * = [[myObject alloc] initWithName: @ "Charles" Nachname: @ "Smith"];

elenco = [ NSArray arrayWithObjects : objA, objB, nil ] ; NSArray * list = [ NSArray arrayWithObjects: objA, objB, nil];

; [ObjA release];
; [ObjB release];

, necessari per l'inserimento nell'array e liberare la memoria. Abbiammo dennoch Zeiger objA und objB , die für die Eintragung in das Array und den freien Speicher. Wir wünschen konnten wir direkt in die Erstellung eines Objekts in das Auffüllen der Array, mit autorelease , um Speicher frei, aber der Code immer noch nicht im Leerlauf laufen. Lassen Sie mich zu demonstrieren, wie das Problem mit einer Klasse-Methode zu lösen. Zunächst ersetzen wir unsere - (id)initWidthName mit:

1
2
3
4
5
6
7
8
9
10
id ) initWithName : ( NSString * ) name lastname : ( NSString * ) lastname { + (Id) initWithName: ( NSString *) Name Nachname: ( NSString *) {Nachname
myObject * Punkt;

item = [ [ self alloc ] init ] ) { if (item = [[self alloc] init]) {
/ / Init
item.name = name;
item.lastname = Nachname;
}
item autorelease ] ; return [Artikel autorelease];
}

Dabei haben wir eine Methode, die Klasse zuweist (in autorelase) und iniziallizza unser Thema, bevor Sie den Zeiger auf die Instanz haben. Der Code verwendet wird, ist dann:

1
2
3
4
elenco = [ NSArray arrayWithObjects : NSArray * list = [ NSArray arrayWithObjects:
@ "Mario" lastname : @ "Rossi" ] , [MyObject initWithName: @ "Mario" Nachname: @ "Smith"],
@ "Carlo" lastname : @ "Bianchi" ] , [MyObject initWithName: @ "Charles" Nachname: @ "Smith"],
; nil];

Viel, viel besser ...

Mehr ...



Stop SOPA