13
UITableView Curso: Desarrollo de Aplicaciones Moviles Estudiantes: Leonardo Guevara Sanchez. Roylan García Fajardo. Sergio Osorno Chaves

IUTABLEVIEW

Embed Size (px)

DESCRIPTION

XCODE

Citation preview

UITableView

Curso: Desarrollo de Aplicaciones Moviles

Estudiantes: Leonardo Guevara Sanchez. Roylan García Fajardo. Sergio Osorno Chaves

¿Qué es UITableViewDelegate?

Se encargan de cargar los datos que va a mostrar la tabla en sus celdas.

Son los que manejan los eventos disparados desde otra clase. En este caso la clase 

¿Qué es UITableViewDataSource?

1) Creamos el proyecto.

2) Una vez creados el proyecto vamos al StoryBoard e insertamos una tabla, arrastrándola desde el Object Library.

3) Asignaremos el dataSource y el delegate al controlador. Para ello hacemos click derecho sobre la tabla que acabamos de añadir, y arrastramos desde el circulito situado junto a estas dos propiedades hasta el View Controller.

¿Qué es IBOutlets?

Los outlets y los actions son la manera conectar los elementos visuales (interface) con la funcionalidad de la aplicación.

4) Ahora abriremos el ViewController.h y añadimos el IBOutlet de la tabla, y las propiedadesUITableViewDelegate y UITableViewDataSource.

#import <UIKit/UIKit.h>  

@interface ViewController : UIViewController <UITableViewDelegate,

UITableViewDataSource>  

{  

IBOutlet UITableView *tableView;  

NSMutableArray *datos;  

}  

@end

 NSMutableArray Contiene los datos que se van a mostrar en la tabla.

5) Asignar el IBOutlet a la tabla en el StoryBoard. Hacemos click derecho sobre el ViewController y arrastramos desde el círculo de tableView a la tabla.

6) Ahora en el método viewDidLoad, iniciamos el array para los datos, y le asignamos una serie de valores.

- (void)viewDidLoad

{  

[super viewDidLoad];  

datos = [[NSMutableArray alloc]initWithObjects:  

@"http://www.Apple.com",  

@"http://www.Google.es",    

@"http://www.Facebook.com",  

@"http://www.Twitter.com",  

nil];  

}

7)  Se va implementar el metodo principales y necesarios para cumplir con el UITableViewDelegate y mostrar los datos

// Método necesario para devolver el número de secciones de la tabla, por lo

general será siempre 1.

.- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {

return 1;

}

// Necesario para indicar el número de filas de la tabla, esto suele ir ligado al

tamaño de un array de elementos a mostrar.

.- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:

(NSInteger)section

{

return [datos count];

}

6.) Ahora configuraremos el contenido de las celdas de nuestra tabla con el siguiente método:

(UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:

(NSIndexPath *)indexPath

{ // Normalmente recuperaremos del array, según la posicion de la fila..

NSString *datoString = [datos objectAtIndex:indexPath.row];

- // Creamos la celda (o fila).

UITableViewCell *cell = [[UITableViewCell

alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];

// Y le establecemos el texto de nuestro dato a una de las filas.

cell.textLabel.text = datoString;  

// Y finalizamos devolviendo la celda return cell; }

8) Implementamos un método encargado de ejecutar una acción al pulsar sobre una fila:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:

(NSIndexPath *)indexPath {

// Este metodo lo que hace ees cuando demos click en una de las filas que

contenga la url la abra en el navegador

NSString *datoString = [datos objectAtIndex:indexPath.row];

[[UIApplication sharedApplication] openURL:[NSURL

URLWithString:datoString]];}