lunes, 28 de marzo de 2011

Mi segunda aplicación Cocoa Capítulo 1

Para empezar el nuevo proyecto elegimos "Windows-Based" dentro de IOS:




Cuando estémos en Xcode la clase creada "Primitiva" la podemos borrar, ya que con las primitivas no vamos más que mostrarlas, si se hiciera algo con ellas, como imprimir, o sacar estadísticas si que la necesitaríamos.


Queda así:







Y a codificar: añádanse un botón y 6 etiquetas



@interface PrimitivaAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
IBOutlet UIButton *boton;
IBOutlet UILabel *eti1;
IBOutlet UILabel *eti2;
IBOutlet UILabel *eti3;
IBOutlet UILabel *eti4;
IBOutlet UILabel *eti5;
IBOutlet UILabel *eti6;
}

Los campos de trabajo, cada número generado y un par de ARRAYS con la colección de números, que al final saldrán en la ventana ordenados de menor a mayor:

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) NSMutableArray *numeros;
@property (nonatomic, retain) NSMutableArray *aordenar;
@property (nonatomic, retain) NSString *num1;
@property (nonatomic, retain) NSString *num2;
@property (nonatomic, retain) NSString *num3;
@property (nonatomic, retain) NSString *num4;
@property (nonatomic, retain) NSString *num5;
@property (nonatomic, retain) NSString *num6;


El total del código de PrimitivaAppDelegate:
//  PrimitivaAppDelegate.h
//  Created by JBZ on 25/03/11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.

#import <UIKit/UIKit.h>

@interface PrimitivaAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
IBOutlet UIButton *boton;
IBOutlet UILabel *eti1;
IBOutlet UILabel *eti2;
IBOutlet UILabel *eti3;
IBOutlet UILabel *eti4;
IBOutlet UILabel *eti5;
IBOutlet UILabel *eti6;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) NSMutableArray *numeros;
@property (nonatomic, retain) NSMutableArray *aordenar;
@property (nonatomic, retain) NSString *num1;
@property (nonatomic, retain) NSString *num2;
@property (nonatomic, retain) NSString *num3;
@property (nonatomic, retain) NSString *num4;
@property (nonatomic, retain) NSString *num5;
@property (nonatomic, retain) NSString *num6;

-(IBAction)boton;

@end

En la próxima entrega engancharemos las etiquetas y el botón.

Bye



viernes, 25 de marzo de 2011

Mi segunda aplicación COCOA capítulo 0

Bien, mis intenciones son hacer mi segunda aplicación en Cocoa, además de dejar escritos los pasos en la nube.
La aplicación va a ser muy sencilla, pero útil: va a generar primitivas, que no son más que combinaciones de 6 números elegidos entre 49 posibles.

El programa se encargará de generar la combinación de 6 números, que por supuesto no está garantizado que nos toque.

Vamos al lio:

CUADERNO DE CARGA

Modelo
Como Cocoa es un lenguaje orientado a objetos, hay que tener presente qué objetos vamos a utilizar; sencillo vamos a tener una clase que será Primitiva, que tendrá como atributos 6 números.

Vista
La pantalla tendrá un NSLabel donde se mostrará la combinación generada. Y un botón tal que al pulsarlo se genere la combinación aleatoria.

Controlador
Se encargará de crear el objeto apuesta de la clase Primitiva; será el encargado de hacer que la apuesta generada sea aleatoria. Como añadido ha de elegir 6 números de 49, pero no puede repetirlos, la invocación a la función random() podría repetir los números, y es aquí donde está la dificultad.