agregar control segmentado en la barra de navigation

¿Alguien puede ayudar con el código sobre cómo agregar control segmentado dentro de la barra de navigation … lo he visto en algunas aplicaciones y quiero implementarlo

Gracias

¿Quieres usar Interface Builder o hacerlo solo en código?

Con la operación de IB es muy sencillo, solo necesita arrastrar el control segmentado para colocarlo en la barra de navigation donde se encuentra el título. El título será reemplazado por el control segmentado.

Si desea lograr esto en el código, consulte esta sección de la biblioteca de reference de iPhone . Parece que necesita establecer la propiedad titleView del elemento de titleView en su control segmentado, que es la subclass de UIView, por lo que es completamente legal.

en viewDidLoad :

obj-c:

 NSArray *segmentTitles = @[ @"segment1", @"segment2", ]; UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:segmentTitles]; segmentedControl.selectedSegmentIndex = 0; segmentedControl.autoresizingMask = UIViewAutoresizingFlexibleWidth; // change the width from 400.0 to something you want if it's needed segmentedControl.frame = CGRectMake(0, 0, 400.0f, 30.0f); [segmentedControl addTarget:self action:@selector(segmentChanged:) forControlEvents:UIControlEventValueChanged]; self.navigationItem.titleView = segmentedControl; 

rápido:

 let segmentTitles = [ "segment1", "segment2", ] let segmentedControl = UISegmentedControl(items: segmentTitles) segmentedControl.selectedSegmentIndex = 0 segmentedControl.autoresizingMask = UIViewAutoresizing.FlexibleWidth // change the width from 400.0 to something you want if it's needed segmentedControl.frame = CGRectMake(0, 0, 400.0, 30.0) segmentedControl.addTarget(self, action: "segmentChanged:", forControlEvents: UIControlEvents.ValueChanged) self.navigationItem.titleView = segmentedControl