Estoy intentando algo muy simple pero de alguna manera no puedo hacer que funcione. Todo lo que intento hacer es cambiar entre 2 Controladores de Vista usando un UISegmentedControl como lo puede ver, por ejemplo, en la aplicación App Store en la pestaña Destacados.Conmutar ViewControllers con UISegmentedControl en iOS5
Estoy usando iOS5 y Storyboards.
Aquí está mi línea de storyboards hasta:
Así que tienen una raíz Vista Controlador y dos UITableViews - Este 2 TableViews que quiero cambiar.
Así es como el archivo de implementación parece
#import "SegmentedLocationViewController.h"
#import "PastEventsLocationViewController.h"
#import "FutureEventsLocationViewController.h"
@interface SegmentedLocationViewController()
@property (weak, nonatomic) IBOutlet UISegmentedControl *segmentedControl;
@property (strong, nonatomic) NSArray *viewControllers;
@end
@implementation SegmentedLocationViewController
@synthesize segmentedControl = _segmentedControl;
@synthesize viewControllers = _viewControllers;
- (IBAction)indexDidChangeForSegmentedControl:(UISegmentedControl*)segmentedControl
{
NSLog(@"index: %d", segmentedControl.selectedSegmentIndex);
}
- (void)setupViewControllers
{
PastEventsLocationViewController *pastEventsLocationViewController = [[PastEventsLocationViewController alloc] initWithStyle:UITableViewStylePlain];
FutureEventsLocationViewController *futureEventsLocationViewController = [[FutureEventsLocationViewController alloc] initWithStyle:UITableViewStylePlain];
self.viewControllers = [NSArray arrayWithObjects:pastEventsLocationViewController, futureEventsLocationViewController, nil];
}
- (void)setupUI
{
[self.segmentedControl addTarget:self action:@selector(indexDidChangeForSegmentedControl:) forControlEvents:UIControlEventValueChanged];
}
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
{
[super viewDidLoad];
[self setupViewControllers];
[self setupUI];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
@end
puedo activar el evento interruptor y abrir una sesión el índice seleccionado en ese momento. Pero no tengo idea de dónde ir desde aquí.
Tal vez alguien pueda dirigir mi atención hacia una determinada dirección ...?
¿Has pensado en volver a cargar TableView con diferentes valores? –
Tienes razón. Voy a verificar eso ahora. Tal vez piense que es demasiado complicado ... – MrBr