Artículos con la etiqueta 'Apple'


10 fragmentos útiles para el iPhone de Apple

Ejecutar un método después de n segundos

Toda la familia performSelector es muy interesante y puede ser útil en multitud de casos. Su aplicación más simple y común es el siguiente:

1
2
3
4
5
@selector ( myMethod ) withObject : nil afterDelay : 3 ] ; [Self performSelector: @ selector (miMetodo) withObject: afterDelay nada: 3];
/ /
void ) myMethod { - (Void) {miMetodo
"Hello World!" ) ; NSLog (@ "Hello World!");
}

Sin embargo, consideran que el "timer" no es exacta. Este procedimiento, por lo tanto, se debe utilizar cuando no se requiere un "significativo" de precisión temporal.

Recuperar la versión de la

1
2
version = [ [ [ NSBundle mainBundle ] infoDictionary ] objectForKey : @ "CFBundleVersion" ] ; NSString * version = [[[ NSBundle mainBundle] infoDictionary] objectForKey: @ "CFBundleVersion"];
"versione = %@" , version ) ; NSLog (@ "Version =% @", la versión);

Sí, es cierto o verdadero?

e TRUE sono in pratica la stessa edentica cosa: Va a peinar el iPhone de Apple kernel puede darse cuenta de que YES , true , y TRUE son básicamente los Edentia lo mismo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/ / Definición de la SI
# Definición de SI (BOOL) 1
# Se define NO 0 (BOOL)

/ / Definición de la verdad
# Definición de una verdadera
# Define FALSO 0

/ / Definición de VERDADERO
# Si! Definida (VERDADERO)
# Define True 1
# Endif

# Si! Definida (FALSO)
# Define FALSO 0
# Endif

Al menos por ahora ...

Vibración

1
2
3
# Importar <AudioToolbox/AudioToolbox.h>
/ /
; AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);

CGImageRef puntero de una UIImage

1
2
3
4
[ UIImage imageNamed : @ "LittleHeart.png" ] ; UIImage corazón * = [UIImage imageNamed: @ "LittleHeart.png"];
heart CGImage ] ; CGImageRef imagen = [CGImage corazón];
/ / La imagen ahora pueden ser "trama" en una CGContextRef
CGRect ) { 0 , 0 , 100 , 100 } , image ) ; CGContextDrawImage (c, (CGRect) {0, 0, 100, 100}, imagen);

Animaciones

1
2
3
4
5
nil context : NULL ] ; [BeginAnimations UIView: contexto nada: NULL];
1.5 ] ; [UIView setAnimationDuration: 1,5];
UIViewAnimationCurveEaseInOut ] ; [UIView setAnimationCurve: UIViewAnimationCurveEaseInOut];
/ / ...
; [CommitAnimations UIView];

NSLog

1
2
3
"NSString object %@ " , myString ) ; NSLog (@ "NSString objeto% @", MyString);
"Float: %f " , myFloat ) ; NSLog (@ "float:% f", myFloat);
"Integer: %i " , myInt ) ; NSLog (@ "Integer:% i", myInt);

Conversor de RGB UIColor

1
# Definición de RGBA (r, g, b, a) [UIColor colorWithRed: verde r/255.0: azul g/255.0: b/255.0 alfa: a]

Paso de parámetros a un NSTimer

Aprovechando el parámetro userInfo puede enviar un puntero a un objeto a nuestro método invocado por temporizador.

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: un objetivo: selector de auto: @ selector (timerMethod) userInfo: repite objectPointer: YES];

/ / ...

void ) timerMethod : ( NSTimer * ) timer { - (Void) timerMethod: ( NSTimer *) {contador
/ / Recuperar el puntero a mi objeto
timer userInfo ] ; objectPointer = [temporizador userInfo];
/ / O
myMethod ] ; [[Timer userInfo] miMetodo];
[ [ timer userInfo ] myProperty ] ; int a = [[temporizador userInfo] myProperty];
/ / ¿Qué es la misma
[ objectPointer myProperty ] ; int a = [objectPointer myProperty];
}

Tiempo de funcionamiento

Esta es una forma sencilla de calcular el tiempo necesario para comprobar la velocidad de la ejecución del código:

1
2
3
4
; CFAbsoluteTime initialTime CFAbsoluteTimeGetCurrent = ();
/ / ... cruz
; CFAbsoluteTime finalTime CFAbsoluteTimeGetCurrent = ();
"Tempo trascorso %f" , finalTime - initialTime ) ; NSLog (@ "f% transcurrido el tiempo", finalTime - initialTime);

Continuación ...

Apple iPhone: Crear un botón de activación personalizado

non funzionano quando un UIButton è impostato in modalità UIButtonTypeCustom ! Los estados UIControlStateSelected o UIControlStateHighlighted no funciona cuando hay un UIButton modo se establece UIButtonTypeCustom ! O más bien, no funcionan (porque reservado para otro tipo de botón), por ejemplo, para crear un botón de dos estados: nota de palanca. Si hemos creado dos imágenes (y stato2.png stato1.png) para nuestro botón, se puede proceder de la siguiente manera:

1
2
3
/ / Los archivos de cabecera que se crea una variable global para usaremo
/ / Comprobar la palanca se
ToggleFlag BOOL;

Ahora vamos a crear nuestro botón:

1
2
3
4
5
6
7
8
9
/ / Creamos un botón y lo colocamos inicialmente en el estado "stato1.png"
/ / Editar initWithFrame: (CGRect) {} 100,100,50,50 con la ubicación y
/ / Tamaño de la imagen ha
; toggleFlag = YES;
[ [ UIButton buttonWithType : UIButtonTypeCustom ] initWithFrame : ( CGRect ) { 100 , 100 , 50 , 50 } ] ; UIButton ToggleButton * = [[UIButton buttonWithType: UIButtonTypeCustom] initWithFrame: (CGRect) {100, 100, 50, 50}];
@ "" forState : UIControlStateNormal ] ; [ToggleButton setTitle: @ "" Forst: UIControlStateNormal];
[ UIImage imageNamed : @ "stato1.png" ] forState : UIControlStateNormal ] ; [ToggleButton setBackgroundImage: [UIImage imageNamed: @ "stato1.png"] Forst: UIControlStateNormal];
self action : @selector ( onToggle : ) forControlEvents : UIControlEventTouchUpInside ] ; [AddTarget ToggleButton: acción de auto: @ selector (onToggle:) forControlEvents: UIControlEventTouchUpInside];
toggleButton ] ; [Self.view addSubview: ToggleButton];

Al hacer clic en el botón se envía un mensaje a gestionar onToggle :

1
2
3
4
5
6
7
void ) onToggle : ( id ) sender { - (Void) onToggle: (id) {remitente
/ / Recuperar puntero a UIButton
( UIButton * ) sender; UIButton buttonClicked * = (UIButton *) del remitente;
/ / Ejecutar Toogle
toggleFlag = toggleFlag!;
[ UIImage imageNamed : ( toggleFlag ) ? @ "stato1.png" : @ "stato2.png" ] forState : UIControlStateNormal ] ; [ButtonClicked setBackgroundImage: [UIImage imageNamed: (toggleFlag) @ "Stato1.png" @ "stato2.png"] Forst: UIControlStateNormal];
}

Continuación ...

Fragmento muy breve: la transmisión de archivos mp3 en el iPhone de Apple

Una alternativa muy simple de ejecutar una secuencia de un archivo mp3 en el iPhone de Apple podría ser:

Continuación ...

Ideas locas: El usuario genera por primera vez las ideas

Hoy, 25 de noviembre de 2009, se inauguró oficialmente Ideas locas , la primera fábrica de ideas generadas por los usuarios (User Generated Ideas UGI).

Continuación ...

Fragmento muy breve: el iPhone de Apple sistema de archivos

Tanto en el Mac OS X y iPhone OS, se puede acceder fácil y directamente en el directorio - más importante - el sistema que son:

1
2
3
NSHomeDirectory Devuelve la ruta al directorio home del usuario actual.
Devuelve la ruta de NSHomeDirectoryForUser Dado un directorio home del usuario.
NSTemporaryDirectory Devuelve la ruta del directorio temporal del usuario actual.

Continuación ...

10 trucos útiles y fragmentos para Apple iPhone y Xcode

1. Cadenas en varias líneas

En Xcode, se puede "romper" una cadena en varias líneas mediante la inserción en el extremo de una barra invertida "\". Esta característica puede ser útil cuando, por ejemplo, queremos insertar el texto HTML en un control UIWebView :

Continuación ...

Objective-C: NSLog () de C struct

o CGPoint , ad esempio. La sintaxis NSLog(@"%@", ... ); que funciona y se utiliza para obtener información sobre los objetos, pero no funciona en C tipos de datos tales como la estructura CGRect o CGPoint , por ejemplo. o NSStringFromCGPoint : Para aprovechar las ventajas de NSLog(@"%@", ... ); incluso en las estructuras de C-estilo se puede confiar en las funciones de conversión como NSStringFromCGRect() o NSStringFromCGPoint :

1
2
3
4
5
CGRect ) { 10 , 20 , 30 , 40 } ; CGRect mioRect = (CGRect) {10, 20, 30, 40};
CGPoint ) { 32 , 64 } ; CGPoint mioPoint = (CGPoint) {32, 64};
/ /
"Info rettangolo: %@" , NSStringFromCGRect ( mioRect ) ) ; NSLog (@ "rectángulo Info:% @", NSStringFromCGRect (mioRect));
"Info point: %@" , NSStringFromCGPoint ( mioPoint ) ) ; NSLog (@ "punto de información:% @", NSStringFromCGPoint (mioPoint));

En concreto, es posible mejorar este procedimiento habla de pequeñas macros útiles, como:

1
# Definir NSLogRect (rect) NSLog (@ "0.0fx% s (% 0.0f,% 0.0f)% 0.0f%", # rect, rect.origin.x, rect.origin.y, rect.size.width , rect.size.height)

O:

1
2
3
4
# Definir NSLogCGPoint (punto) NSLog (@ "% s (% 0.0f,% 0.0f)", # punto.x punto, Point.y)

CGPoint ) { 32 , 64 } ; CGPoint mioPoint = (CGPoint) {32, 64};
; NSLogCGPoint (mioPoint);

Que dará como resultado:

1
32 , 64 ) mioPoint: (32, 64)

Continuación ...

Truco muy corto: tres trucos para los desarrolladores de iPhone de Apple

Icono de la aplicación

57 × 57 píxeles icono que representará a nuestra aplicación es "deteriorados" por el iPhone de Apple de forma automática: se agrega un borde redondeado, un brillante y efectos 3D. Este ajuste se puede cambiar seleccionando el archivo [nome applicazione]-Info.plist y la adición de la propiedad "Icon incluye efectos de brillo y bisel Ya":

Continuación ...

Fragmento muy breve: Los números de iPhone, al azar

Si usted necesita para generar números aleatorios en una aplicación deben dejar de lado el iPhone de Apple Objective-C, ya que no propone un orden de clases. La solución se propone que el C: rand(), srand(), random(), srandom() e arc4random() .

Continuación ...

Adobe Flash CS5 Professional para Apple iPhone

Adobe Flash Professiona 5 per Apple iPhone

Continuación ...