iRefranes ya en iTunes!!!

0

Comentario

Add

iRefranes ya en iTunes!!!

Febrero 10, 2010 Bloggies por Administrator

Por fin!!!! iRefranes ya está disponible en iTunes.

 

A costao lo suyo, esta ha sido mi primera aplicación con BD, ya os conté que Apple la rechazo por haber utilizado código no valido para ellos.

 

Hay una presentación de la aplicación aquí

 

Recordar, si quereis anunciar vuestra aplicación ponerme entrar en el apartado de contacto y enviarme las imagenes y los textos.

Google!Facebook!MySpace!Yahoo!
NsArray y UiTableView

0

Comentario

Add

NsArray y UiTableView

Febrero 09, 2010 Bloggies por Administrator

Aquí se explica como usar un NsArray con un UiTableView.

este tutorial es muy recomendable.

 

Mil gracias a IphoneBlog por estos grandisimos tutoriales.

 

Ingreso de datos NSArray a un UITableView

Mucha de la gente que tiene cierta experiencia en programación sabrá que existen ciertas estructuras de datos llamados Arrays (o “arreglos” en español). Básicamente nos permiten guardar y acceder a la información de una manera rápida y simple sin tener que hacer hacer uso de una base de datos. Entre las diversas formas de arrays que hay en Objetive-C, vale la pena mencionar dos: NSArray y NSMutableArray. Los dos son muy parecidos, con la diferencia de que en el primero no se modifican los índices después de ser asignados y en el segundo sí se puede.

En este artículo veremos como crear una estructura de datos para mostrarla posteriormente en un UITableView.

Para empezar, abran un nuevo proyecto Navigation-Based Applicacion para iPhone en Xcode y nómbrenlo como “Zoo”.

Una vez hecho esto, vayan a File -> New File y cuando se abra la ventana, seleccionen el icono de NSObject subclass. Presionen Next y nombren a su archivo como “Zoo.m”.

Finalmente hagan clic en Finish. Lo que hicimos fue crear una subclase de la clase NSObject para tener disponibles todos los métodos de la superclase.

Ahora vamos a editar nuestra subclase Zoo.m dentro de la ventana del Xcode y le agregaremos dos propiedades llamadas name y scream.

#import 
 
@interface Zoo : NSObject {
NSString *name;
NSString *scream;
// Agregamos las propiedades.
}
 
@property (nonatomic, copy) NSString * name;
@property (nonatomic, copy) NSString * scream;
//Definición de las propiedades de nuestra clase en la interface. Ambas son cadenas de caracteres.
 
- (id)initWithName:(NSString*)n scream:(NSString *)scr;
// Aqui se define la función constructora, y vamos a hacer que acepte dos argumentos.
 
@end

Este archivo es lo que se llama la interface de la clase y es donde se definen las propiedades que esta tendrá. Es en otro archivo donde las implementamos y escribimos el código que define su comportamiento. Por defecto, todos los objetos tienen su propia función constructora a menos que desees hacerla mas personalizada.

¿Porqué deseamos personalizarla? Para poder pasarle el name y el scream cuando se crea el objeto.

Abramos el archivo Zoo.m y agreguemos este código:

#import "Zoo.h"
 
@implementation Zoo
@synthesize name, scream;
// Definimos los getters/setters de nuestras propiedades.
 
- (id)initWithName: (NSString*)n scream:(NSString*) scr {
self.name = n;
self.scream = scr;
//Una vez creado el objeto, tenemos que guardar las variables dentro de las propiedades.
return self;
//Devolvemos el objeto.
}
 
@end

Aquí implementamos el método initWithName y le pasaremos dos variables a través de los argumentos de la función; nombre y grito. Al final, hay una línea muy importante (la número once). Sino fuera por esta línea, el método no devolvería el objeto Zoo que se crea.

Ya con todo esto, nuestro objeto Zoo ha sido definido pero falta ingresarlo en un NSArray. Este artículo de NSArray no estaría completo sino usaramos uno :)

Abramos el archivo RootViewController.h y lo modificamos de esta manera:

#import <UIKit/UIKit.h>
#import "Zoo.h"
 
@interface RootViewController : UITableViewController {
NSArray *animals;
// Definimos una serie de propiedades que usaremos.
}
 
@property (nonatomic , retain) NSArray *animals;
//Otra vez definimos las propiedades y sus características...
 
@end

Para la gente con pocos conocimientos en programación, les comento que estamos creando una propiedad para nuestra clase RootViewController llamada animals el cual un objeto de tipo NSArray. Este dato posteriormente los usaremos dentro de la definición de los métodos en nuestro archivo RootViewController.m, así que vayan abriendolo, dado que le haremos unas modificaciones.

Primero, antes que todo, localicen la línea @implementation RootViewController; y agreguen justo debajo este código:

@synthesize animals;
// Creación de los getters/setters.

Synthesize lo que hace es crear automáticamente los métodos getter/setters para las propiedades que definimos. Esto puede llegar a ser importante si deseamos tener una manera para modificar estos datos y responde mucho al concepto de encapsulamiento en la OOP.

Posteriormente, busquen el método viewDidLoad y modifíquenlo de esta forma:

- (void)viewDidLoad {
 
Zoo *cat = [[Zoo alloc] initWithName:@"Firulais" scream:@"MIAU"];
Zoo *dog = [[Zoo alloc] initWithName:@"Lassie" scream:@"GUAU"];
Zoo *bird = [[Zoo alloc] initWithName:@"Piolin" scream:@"PIO"];
// Creamos nuestros objetos Zoo
 
self.animals = [[NSArray alloc] initWithObjects:cat, dog, bird, nil];
// Metemos los objetos Zoo dentro de un NSArray.
}

A partir de la línea 4 creamos tres variables/objetos temporales (gato, perro y pajaro) de tipo Zoo, el cuál es la clase que definimos con anterioridad. Como verán, usamos el método initWithName para pasarle los datos de nuestro objeto y configurarlo de manera mas personalizada. Posteriormente, almacenamos estos objetos dentro de un NSArray. Si, por fin apareció el NSArray :)

Es importante señalar que el método viewDidLoad se invoca cuando nuestra ventana termina de cargar, lo que nos permite tener listos todos los datos y celdas para crear las filas necesarias en nuestro UITableView.

Ahora busquen el método numberOfRowsInSection y modifiquemos el return.

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [animals count];
// Devolvemos el número de índices de nuestro NSArray;
}

Esta función devuelve la cantidad de filas en nuestra tabla y le indica al método que veremos después el número de veces que debe ejecutarse dependiendo la cantidad de elementos de nuestro NSArray animals.

Para finalizar, editemos la función cellForRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
 
static NSString *MyIdentifier = @"MyIdentifier";
 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:MyIdentifier] autorelease];
}
 
Zoo *actual = [animals objectAtIndex:indexPath.row];
// Objeto actual de la fila. indexPath es un argumento que se pasa automáticamente y nos indica el número que devuelve numberOfRowsInSection
 
NSString *name = actual.name;
NSString *concatenate = [name stringByAppendingString: @" says: "];
NSString *final = [concatenate stringByAppendingString: actual.scream];
// Concatenación del texto extraído del NSArray.
 
[cell setText:final];
// Metemos el texto dentro del cell.
 
return cell;
// Devolvemos el cell.
}

A partir de la línea número diez, son las que nos interesan. En este código, creamos una variable/objeto temporal de tipo Zoo llamado actual en el cual se almacenará el índice actual del NSArray en base al argumento indexPath.

En las siguientes tres líneas extraemos el nombre del animal y lo concatenamos con otras cadenas de caractéres. Posteriormente, en la línea 18 invocamos el método setText del objeto cell y le asignamos el valor final que concatenamos.

Ahora sí, le damos en Build and Go y nuestra aplicación está lista :)

 

Post Original

 

Google!Facebook!MySpace!Yahoo!
Ojos Rojos

0

Comentario

Add

Ojos Rojos

Febrero 09, 2010 Bloggies por Administrator

Imagino que vosotros acabareis igual que yo, con los ojos destrozaos despues de todo el día dandole a la tecla.

Llevo dos días con algo muy divertido, la pagina Web de mi señora Jefa, Rita Iglesias , digo que es muy divertido por decir algo ya que mis amigos de facebook me están matando!!!.

Lo que quiero es, que cuando ella publique un artículo en un apartado especial esto se publique automaticamente en facebook en una pestaña de todos los usuarios que acepten un programa que he creado en facebook pero no hay forma!!!

Si despues de mas de 15 horas dedicadas a un asunto no habeis avanzado, lo mejor es pasar del tema una temporadita, para aclararos, o pillar un lanzallamas, apuntar al pc yyyyyyyyyyyyy noooo, con tranquilidad.

La Web está montada con Joomla 1.5 al igual que esta, y el modulo que estoy probando es joomfb, la web del autor esta muy bien, con foros y demas, pero por desgracia para postear necesitas estár registrado y la pagina de registro no funciona.

En fin, dentro de unos días volveré a intentarlo.

 

Gran novedad, iRefranes en Review, a ver que le encuentran ahora a mi pequeña.

Mañana empezaremos con el nuevo proyecto de iphone, os iré poniendo tutoriales y demas ya que me ha dicho un amigo que Apple va a obligarnos a todos a utlizar coredata, asi que tendremos que aprender a usarlo.

Este soy yo despues de 16 horas de Ordenador

Google!Facebook!MySpace!Yahoo!
Pagina Web para nuestras Apps

0

Comentario

Add

Pagina Web para nuestras Apps

Febrero 06, 2010 Bloggies por Administrator

Bueno, pues le estoy dando un poquito de caña a web a ver si consigo ponerla en marcha pronto para que todos podais colgar vuestras aplicaciones.

Como podeis ve, hay que registrarse para poder poner comentarios, subir fotos etc.

La idea es que anuncieis vuestras aplicaciones aquí, en la pagina principal he montado un carrusel donde aparecerá el icono de vuestra aplicacion y al pincharlo irá a vuestro artículo donde anunciareis vuestra apli.

El area de noticias aun no está terminada del todo, dentro de poco tendremos toda la actualidad en la web.

la imagen principal de la web no me gusta, esta noche intentaré hacer algo con ella :).

espero ver pronto vuestras aplis colgadas por aqui :)

Google!Facebook!MySpace!Yahoo!
_imageScaledToSize No le gusta a Apple

1

Comentario

Add

_imageScaledToSize No le gusta a Apple

Febrero 06, 2010 Bloggies por Administrator

Pues ya está claro, el metodo _imageScaledToSize no le gusta a Apple, no lo useis.

este metodo yo lo estaba usando para pintar un grafico dentro de las celdas de un tableview.

Solución:

despues de mirar y mirar lo y probar unas cuantas cosas lo mas practico ha sido reducir la imagen directamente con el photoshop :)

 

Google!Facebook!MySpace!Yahoo!

Apps

http://www.iphonedesarrollo.com/components/com_gk3_photoslide/thumbs_big/206830IconoGrande.pnglink
http://www.iphonedesarrollo.com/components/com_gk3_photoslide/thumbs_big/341873mzl.ijyagmoa.pnglink
http://www.iphonedesarrollo.com/components/com_gk3_photoslide/thumbs_big/702107icono_Grande.pnglink
http://www.iphonedesarrollo.com/components/com_gk3_photoslide/thumbs_big/581488nom_icono.pnglink