¿Hay alguna manera de establecer el segmento de inicio seleccionado en un UISegmentedControl en Interface Builder, o tengo que hacerlo en el código? Si está en el código, ¿viewDidLoad es el mejor lugar para configurarlo?¿Cómo puedo establecer el estado predeterminado de un UISegmentedControl?
Respuesta
En Interface Builder cuando selecciona el objeto UISegmentedControl en su UI, en el panel de atributos, en el control de segmento hay un menú desplegable de segmento, seleccione el segmento que desee (0,1 y así sucesivamente) y marque el 'seleccionado' opción debajo de él.
De código, puede simplemente hacer self.segmentedControl.selectedSegmentIndex = someDefaultIndex
.
si debe ponerlo en viewDidLoad:
o no depende enteramente de la estructura de su aplicación. Por ejemplo, si su aplicación se está iniciando y cargando la vista por primera vez y necesita establecer el control al valor que tenía durante la ejecución anterior de la aplicación, entonces definitivamente tiene sentido hacerlo allí.
+1 ¡Gracias! Funciona como encanto! –
Si usted no usa guiones gráficos y desea establecer un índice predeterminado después de una cierta configuración/networking como yo, este pequeño fragmento se selecciona algo si el usuario no tiene. Coloqué esto en mi subclase de UISegmentedControl
, pero podría colocar esto en cualquier lugar. (Swift 3)
Decl: var UISegmentedControlNoSegment: Int { get }
Desc: A segment index value indicating that there is no selected segment. See selectedSegmentIndex for further information.
versión corta:
if selectedSegmentIndex == UISegmentedControlNoSegment {
selectedSegmentIndex = initialIndex
}
Longer versión
func reloadData() {
guard let numberOfItems = dataSource?.numberOfItems() else {
return
}
removeAllSegments()
for index in 0...numberOfItems {
insertSegment(with: $image, at: index, animated: false)
}
if selectedSegmentIndex == UISegmentedControlNoSegment {
selectedSegmentIndex = initialIndex
}
}
Después de hacer clic en el Control segmentado, vaya a donde creó los segmentos y elija el que desea que sea el predeterminado. Luego debajo de eso habrá una Caja con "Seleccionado" por ella. Seleccione eso y será predeterminado.
- 1. UISegmentedControl icono de estado seleccionado imagen
- 2. ¿Cómo puedo desactivar un UISegmentedControl?
- 3. configuración del segmento predeterminado en UISegmentedControl
- 4. ¿Puedo establecer un valor de campo predeterminado de un EntityProxy?
- 5. ¿Establecer el valor predeterminado en un DataContract?
- 6. ¿Puedo mostrar un objeto UISegmentedControl en vertical?
- 7. ¿Puedo establecer un esquema predeterminado dentro de un procedimiento almacenado?
- 8. ¿Cómo establecer el estado predeterminado de la casilla de verificación con javascript?
- 9. Detectando el segmento interceptado de un UISegmentedControl
- 10. Cómo establecer el valor predeterminado de un ListPreference
- 11. Cómo establecer el estado de salida en un Groovy Script
- 12. Personalizar los colores de un UISegmentedControl
- 13. Cómo establecer el proyecto predeterminado para SBT
- 14. Cómo establecer el valor predeterminado en Hibernar
- 15. iPhone: UISegmentedControl con imágenes personalizadas en estado presionado
- 16. Html.EditorFor Establecer valor predeterminado
- 17. ¿Cómo establecer un valor predeterminado para la lista de elementos?
- 18. obtener el valor de cadena de UISegmentedControl
- 19. Cómo cambiar el color predeterminado de estado activo "azul"
- 20. ¿Cómo puedo evitar el estado global?
- 21. UISegmentedControl escala de imagen
- 22. Establecer git diff en un valor predeterminado
- 23. Google Translate establecer el idioma predeterminado
- 24. ¿Cómo definir un valor predeterminado para establecer una costumbre Django
- 25. Yii $ form-> textfield, cómo establecer un valor predeterminado?
- 26. Cómo establecer JSplitPane-Divider colapsar/expandir Estado?
- 27. Establecer un valor predeterminado para una propiedad
- 28. ¿Puedo establecer un espacio de tabla predeterminado para el índice y las tablas?
- 29. cómo establecer el valor predeterminado de form_for select
- 30. ¿Cómo puedo obtener el estado de un programa?
¡Eso no cambia el valor por defecto! –
Oh ya haga clic en la opción seleccionada. Ya veo. Gracias. –