Pregunta

, de hecho, el título contiene mi pregunta. Tengo un UISegmentedControl, y la necesidad de anular la selección de la ficha seleccionada en ese momento. Probé:

[menu setSelectedSegmentIndex:-1];

menú de ser el UBOutlet para uisegmentedcontrol pero esto me da una excepción. Alguien tiene alguna idea? Gracias peter

¿Fue útil?

Solución

Me gustaría asumir que usted ha llamado [myArray length] en lugar de la [myArray count] adecuada en algún lugar de su código. NSArray utiliza el método de recuento, no la longitud para el número de elementos que contiene.

Otros consejos

La forma correcta de hacerlo es:

[menu setSelectedSegmentIndex:UISegmentedControlNoSegment];

Creo que se intenta crear una selección momentánea en el control segmentado. En interfaz del generador de establecer el segmentedcontrol a momentánea. O en el código que puede hacer:

menu.momentary = YES;

Configuración de la segmentedControl a .momentary = YES cambia la forma en que el usuario puede interactuar con el segmentedControl. Si usted quiere tener nada seleccionado inicialmente cuando se carga la página, sino que tenga segmentedControl comportan de la misma después se realiza una selección por parte del usuario, entonces tendrá que algo más parecido a esto:

solución Swift 4 :

 @IBOutlet weak var segmentedControl: UISegmentedControl!

 self.segmentedControl.selectedSegmentIndex = UISegmentedControlNoSegment

Ahora puede hacer esto en Xcode 6 en el constructor de interfaces:

Deselect the 'Selected' option under segmented control behaviour in attributes inspector.

La solución Swift:. @IBOutlet weak var mySegmentedControl: UISegmentedControl! y mySegmentedControl.selectedSegmentIndex = -1

rápido 4

@IBOutlet weak var segmentControl: UISegmentedControl! {
    didSet {
        segmentControl.selectedSegmentIndex = UISegmentedControl.noSegment
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top