Как создать радиогруппу в swift3

-2

Как реализовать функциональность радиогруппы в swift3.

Любая помощь будет принята с благодарностью.

  • 0
    В iOS нет такого элемента пользовательского интерфейса, как переключатель, хотя вы можете попробовать различные сторонние реализации.
  • 0
    GDCheckbox
Показать ещё 2 комментария
Теги:
swift3

4 ответа

2

В iOS стандартным элементом управления, который выполняет функцию радиоуправления, является UISegmentedControl.

let segmentedControl = UISegmentedControl(items: ["Option A", "Option B", "Option C"])

// Don't forget to have the @IBAction valueChanged(_:)
segmentedControl.addTarget(self, action: #selector(valueChanged(_:)), for: .valueChanged)

// Set the constraints or frame

view.addSubview(segmentedControl)
  • 0
    +1. Вы также можете использовать табличное представление как скриншот в Руководстве по интерфейсу пользователя iOS
  • 0
    @hoseokchoi Такая раскладка таблицы выглядит действительно красиво
0

вы можете использовать кнопку пользовательского интерфейса вместо этого, чтобы один UIButton установил два состояния по умолчанию, и один из них выбран (может выполняться через раскадровку)

  if state == selected then value is true
    if state == default then value is false
0

Если вы создаете приложение iOS и не хотите, чтобы он выглядел как мутант Windows, вы должны переосмыслить дизайн пользовательского интерфейса, чтобы использовать и контролировать элементы управления пользовательского интерфейса, которые знакомы пользователям iOS (как это предлагается в других ответах).

Если, однако, вы ищете способ реализации взаимного исключения, есть несколько подходов, которые вы могли бы использовать, но AFAIK, ни один из них не "из коробки". Все они потребуют немного кодирования.

Один из подходов может заключаться в том, чтобы размещать кнопки в сборке выходных данных (в построителе интерфейса), связывать их все с одним и тем же IBAction и использовать коллекцию "снимок" для всех, кроме тех, которые отправили событие (отправителя).

Например:

@IBOutlet var exclusiveItems:[UIButton]
@IBAction func exclusiveItemSelected(_ sender: Any) 
{
  exclusiveItems.forEach{$0.selected = $0 === sender }
}

Вместо атрибута.selected вы можете изменить изображение или использовать emoji и изменить метку. например <=>

Если вы собираетесь использовать это в нескольких местах, я бы предложил создать подкласс элемента управления пользовательского интерфейса, чтобы поддерживать постоянство поведения и избегать кода плиты котла.

0

В ios нет функции радиогруппы.

Как ты это делаешь?

Создайте кнопку и создайте две версии изображения. один для выбранного и один для отмены.

И вы должны вручную обрабатывать логику для группы переключателей.

Я тоже жду эту функцию. :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню