Для реализации только одного выбранного чекбокса в Swift, вы можете использовать массив типа UIButton
. Вот подробное объяснение, как это сделать.
1. Создайте массив для хранения чекбоксов:
var checkboxes: [UIButton] = []
2. Создайте функцию для создания и настройки чекбоксов:
func setupCheckbox() { // Создаем новый чекбокс let checkbox = UIButton(type: .system) // Устанавливаем изображения для состояний нажатия и отжатия checkbox.setImage(UIImage(named: "unchecked"), for: .normal) checkbox.setImage(UIImage(named: "checked"), for: .selected) // Добавляем действие, которое будет вызываться при нажатии на чекбокс checkbox.addTarget(self, action: #selector(checkboxTapped(_:)), for: .touchUpInside) // Добавляем чекбокс в массив checkboxes.append(checkbox) }
3. Создайте функцию, которая будет вызываться при нажатии на чекбокс:
@objc func checkboxTapped(_ sender: UIButton) { // Помечаем все чекбоксы как отжатые checkboxes.forEach { $0.isSelected = false } // Выбранный чекбокс помечаем как нажатый sender.isSelected = true }
4. Добавьте чекбоксы на вашу веб-страницу или пользовательский интерфейс:
func addCheckboxesToView() { // Добавьте ваш код добавления чекбоксов на веб-страницу или пользовательский интерфейс // Например: checkboxes.forEach { view.addSubview($0) } }
5. Вызовите функции для создания и добавления чекбоксов:
// Вызовите функцию несколько раз, чтобы создать и настроить чекбоксы setupCheckbox() setupCheckbox() setupCheckbox() // Вызовите функцию для добавления чекбоксов на веб-страницу или пользовательский интерфейс addCheckboxesToView()
Теперь у вас есть массив чекбоксов, и только один чекбокс будет выбран при нажатии на любой из них. Вы также можете использовать свойство isSelected
для определения выбранного чекбокса и выполнения необходимой логики.