¿Cómo puedo habilitar varios segmentos de una UISegmentedControl para ser seleccionado?

Digamos que mi UISegmentedControl tiene 8 segmentos numerados. Me gustaría que el usuario podrá activar 2, 3, o más de ellos a la vez. La alternancia de ellos. Esencialmente, como un bits en un byte. Es esto posible? Yo creo que es normal de Mac OS X, pero me parece que no puede encontrar una manera de hacerlo en el SDK del iPhone.

Si tengo que simular esta poniendo botones en una vista, ¿hay alguna manera de hacer lo siguiente:

  1. Redondear las esquinas de la vista, por lo que parece la «barra» de estilo UISegmentedControl?
  2. Uso de la incorporada en los orígenes de la «barra» de estilo en los botones?
  3. Dar a los botones de una sombra, como toda la «barra» de estilo? (no el texto)

OriginalEl autor dlamblin | 2009-06-22

5 Kommentare

  1. 8

    Esto no es posible con el uso de UIKit. Yo recomendaría crear un control personalizado, o una matriz de UISwitch controles, en representación de cada una de las opciones en su UISegmentedControl.

    OriginalEl autor pix0r

  2. 7

    Este es el mejor control personalizado que he encontrado, que permite a múltiples segmentos de ser seleccionado en forma simultánea:

    https://github.com/yonat/MultiSelectSegmentedControl

    Esta es una subclase de UISegmentedControl, que es conveniente. He bifurcada aquí:

    https://github.com/stewartmacdonald/MultiSelectSegmentedControl

    y añadido algunos ejemplos de código para el archivo Léame y añadido un método que permite obtener un NSArray de los títulos de todos los segmentos seleccionados.

    MultiSelectSegmentedControl es muy agradable. Se extiende UISegmentedControl así que todos sus métodos están disponibles.

    OriginalEl autor smacdonald

  3. 2

    Creo que la forma más sencilla es crear tu propio segmentedcontrol con UIButton.

    Marco

    Una manera de hacer esto, que me han hecho en el envío de mobile, es el uso de un UILabel con bordes redondeados y poner rectangular UIButtons en el interior. De esta manera usted puede obtener los bordes redondeados para el control combinado. Disfrutar.

    OriginalEl autor Marco

  4. 1

    No parece ser una manera de hacer esto en XCode ahora. En los Atributos del Inspector, hay una sección con el Segmento, el Título, la Imagen, el Comportamiento. El comportamiento de las opciones están «Habilitados» y «Seleccionado». Usted puede selecte «Seleccionado» para múltiples segmentos.

    No creo que esto funciona. En Xcode cuando seleccione «Seleccionado» para un segmento, el de los otros segmentos todos se elimina la selección. Además de los métodos para UISegmentedControl incluyen setEnabled:forSegmentAtIndex pero no setSelected:forSegmentAtIndex (que sería útil). Estoy tratando de hacer lo mismo que el OP y parece que me necesita para crear un control personalizado. Tipo de irónico, ya que el ayudante de botones en la parte superior de Xcode en sí son exactamente lo que estoy disparando para (Mac app).

    OriginalEl autor Blamdarot

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea