Ausführen eines Verfahrens nach n Sekunden
Die ganze Familie performSelector ist wirklich interessant und kann in einer Vielzahl von Fällen nützlich. Seine Anwendung einfachste und häufigste ist die folgende:
1 2 3 4 5 | @selector ( myMethod ) withObject : nil afterDelay : 3 ] ; [Self performSelector: @ selector (myMethod) withObject: nil afterDelay: 3]; / / void ) myMethod { - (Void) {myMethod "Hello World!" ) ; NSLog (@ "Hallo Welt!"); } |
Sind jedoch der Ansicht, dass die "Timer" nicht korrekt ist. Dieses Verfahren sollte daher nicht verwendet werden, wenn "erhebliche" Zeit Präzision erforderlich.
Rufen Sie die Version des
1 2 |
JA, true oder True?
e TRUE sono in pratica la stessa edentica cosa: Going to durchkämmen den Kernel Apple iPhone können Sie erkennen, dass YES , true und TRUE praktisch dasselbe edentica sind:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | / / Definition von JA # JA (BOOL) 1 definieren # Definieren NO (BOOL) 0 / / Definition der wahren # Define TRUE 1 # Define FALSE 0 / / Definition der TRUE # If! Definiert (true) # Define TRUE 1 # Endif # If! Defined (FALSCH) # Define FALSE 0 # Endif |
Zumindest für jetzt ...
Vibration
1 2 3 | # Import <AudioToolbox/AudioToolbox.h> / / ; AudioServicesPlaySystemSound (kSystemSoundID_Vibrate); |
Pointer CGImageRef ausgehend von einem UIImage
1 2 3 4 | [ UIImage imageNamed : @ "LittleHeart.png" ] ; UIImage * heart = [UIImage imageNamed: @ "LittleHeart.png"]; heart CGImage ] ; CGImageRef image = [Herz CGImage]; / / Das Bild kann nun "gerastert" werden auf einem CGContextRef CGRect ) { 0 , 0 , 100 , 100 } , image ) ; CGContextDrawImage (c, (CGRect) {0, 0, 100, 100}, Bild); |
Animationen
1 2 3 4 5 | nil context : NULL ] ; [UIView beginAnimations: nil context: NULL]; 1.5 ] ; [UIView setAnimationDuration: 1,5]; UIViewAnimationCurveEaseInOut ] ; [UIView setAnimationCurve: UIViewAnimationCurveEaseInOut]; / / ... ; [UIView commitAnimations]; |
NSLog
1 2 3 | "NSString object %@ " , myString ) ; NSLog (@ "NSString Objekt% @", myString); "Float: %f " , myFloat ) ; NSLog (@ "float:% f", myFloat); "Integer: %i " , myInt ) ; NSLog (@ "Integer:% s", myInt); |
Converter von RGB nach UIColor
1 | # Definieren RGBA (r, g, b, a) [UIColor colorWithRed: r/255.0 grün: blau g/255.0: b/255.0 alpha: a] |
Übergabe von Parametern an einer NSTimer
Ausnutzung der Parameter userInfo können Sie einen Zeiger auf unser Objekt zu senden an die Methode von Timer aufgerufen.
1 2 3 4 5 6 7 8 9 10 11 12 13 | scheduledTimerWithTimeInterval : 1 target : self selector : @selector ( timerMethod ) userInfo : objectPointer repeats : YES ] ; [ NSTimer scheduledTimerWithTimeInterval: 1 Ziel: Selbst selector: @ selector (timerMethod) userInfo: objectPointer Wiederholungen: YES]; / / ... void ) timerMethod : ( NSTimer * ) timer { - (Void) timerMethod: ( NSTimer *) Timer { / / Hole den Zeiger auf mein Objekt timer userInfo ] ; objectPointer = [Timer userInfo]; / / Oder myMethod ] ; [[Timer userInfo] myMethod]; [ [ timer userInfo ] myProperty ] ; int a = [[Timer userInfo] myProperty]; / / Welche ist die gleiche [ objectPointer myProperty ] ; int a = [objectPointer myProperty]; } |
Laufzeit
Hier ist ein einfacher Weg, um kurze Zeit benötigt, um die Geschwindigkeit der Ausführung von Code zu überprüfen, berechnet:
1 2 3 4 | ; CFAbsoluteTime initialTime CFAbsoluteTimeGetCurrent = (); / / ... Code ; CFAbsoluteTime finalTime CFAbsoluteTimeGetCurrent = (); "Tempo trascorso %f" , finalTime - initialTime ) ; NSLog (@ "verstrichene Zeit% f", finalTime - initialTime); |










Es sind keine Kommentare für diesen Beitrag
Hinterlasse einen Kommentar