Posts etiquetados ‘ios6’


Es común tener una gran cantidad de datos que queremos mostrar en el iPhone / iPod, pero no hay manera de que podamos caber todos al mismo tiempo en la pantalla (incluso en el iPad), esa es una de las funcionalidades de el UIScrollView.

El UIScrollView es una clase muy versátil, que puede manejar el zoom, paneo, desplazamiento, etc.

Vamos a crear una aplicación, yo siempre utilizo la base para poder crear mis aplicaciones ya que me siento mas comodo..

Ir a la clase SimpleScrollViewController, en el método loadView y crear su UIScrollView, vamos a crear con la misma anchura y altura como la vista desde SimpleScrollViewController.

UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];

Habilitar la paginación

scroll.pagingEnabled = YES;

Si el valor de esta propiedad es SI, la vista de desplazamiento se detiene en múltiplos de la opinión de límites cuando el usuario se desplaza. El valor predeterminado es NO.

Crear los tres UIViews

NSInteger numberOfViews = 3;
for (int i = 0; i < numberOfViews; i++) {
CGFloat xOrigin = i * self.view.frame.size.width;
UIView *awesomeView = [[UIView alloc] initWithFrame:CGRectMake(xOrigin, 0, self.view.frame.size.width, self.view.frame.size.height)];
awesomeView.backgroundColor = [UIColor colorWithRed:0.5/i green:0.5 blue:0.5 alpha:1];
[scroll addSubview:awesomeView];
[awesomeView release];
}
 
La parte más importante en esto es entender la xOrigin. Esto colocará cada UIView exactamente donde el UIView anterior se ha detenido, en otras palabras, cada UIView se iniciará en el extremo de la anterior.
 
Ajuste el UIScrollView contentSize
scroll.contentSize = CGSizeMake(self.view.frame.size.width * numberOfViews, self.view.frame.size.height);
El contentSize es sólo la suma de los anchos de las tres UIViews, si el ancho de cada UIView es de 320, y tenemos tres UIViews, el ancho contentSize será 920.
 
Agregue el UIScrollView al SimpleScrollViewController UIView
[self.view addSubview:scroll];
[scroll release];
 
Y ya está
Al final, usted debe tener algo como esto:
– (void)loadView {
[super loadView];
self.view.backgroundColor = [UIColor redColor];
UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
scroll.pagingEnabled = YES;
NSInteger numberOfViews = 3;
for (int i = 0; i < numberOfViews; i++) {
CGFloaxOrigin = i * self.view.frame.size.width;
UIView *awesomeView = [[UIView alloc] initWithFrame:CGRectMake(xOrigin, 0, self.view.frame.size.width, self.view.frame.size.height)];
awesomeView.backgroundColor = [UIColor colorWithRed:0.5/i green:0.5 blue:0.5 alpha:1];
[scroll addSubview:awesomeView];
[awesomeView release];
}
scroll.contentSize = CGSizeMake(self.view.frame.size.width * numberOfViews, self.view.frame.size.height);
[self.view addSubview:scroll];
[scroll release];
}
Listo Gracias si tienen alguna dudo o consulta estoy para apoyarlos.
 
 Imagen