如何快速制作单选按钮3

时间:2018-08-01 08:52:17

标签: ios swift3

我正在创建一个Swift iOS应用,其中必须显示一个接受水平和垂直方式的单选按钮。我在GitHub上找到了一个库,该库可以解决我的问题,但是它仅显示水平方式(并排方向),我需要垂直方式(即在另一个单选按钮下方显示一个单选按钮)。任何指导将不胜感激。预先谢谢你。

链接:https://github.com/sag333ar/SKRadioButton

4 个答案:

答案 0 :(得分:3)

我相信这里的代码解决方案更少!

@IBOutlet weak var btn1: UIButton!
@IBOutlet weak var btn2: UIButton!
.
.
.
.
@IBOutlet weak var btn10: UIButton!


var arrButtons:[UIButton] = []

    override func viewDidLoad() {
        super.viewDidLoad()

        arrButtons.append(btn1)
        arrButtons.append(btn2)
        //so, on
    }

转到按钮属性并为UIButton设置状态Config属性选择的图像,以便当isSelected属性为true时它将替换图像。

还使用“ btnRadioPrressed”方法将touchUpInside事件绑定到每个按钮。

    @IBAction func btnRadioPrressed(sender: UIButton) {

        for btn in arrButons {
            btn.isSelected = false
        }
        if let index = arrButons.index(where: { $0 == sender }) {
            arrButons[index].isSelected = true
        }
    }

希望这会帮助您减少代码。

答案 1 :(得分:0)

您已共享的链接可以创建垂直按钮,使用情况说明它在水平UIStackView内使用它

答案 2 :(得分:0)

您可以在UIStackView中添加多个按钮,然后根据需要将UIStackView的axis属性设置为水平或垂直。要使单选按钮设置按钮的图像并提供标题,然后设置左标题插图以在按钮图像和标题之间留出一些空间。

答案 3 :(得分:0)

因为这个简单的事情不需要使用任何第三方库,您可以使用 UIButton 做到这一点。

import UIKit

class RootViewController: UIViewController {

@IBOutlet weak var btnMale: UIButton!
@IBOutlet weak var btnFemale: UIButton!

    override func viewDidLoad() {
        super.viewDidLoad()

    }

@IBAction func btnTapped(_ sender: UIButton) {

    if sender.currentImage == UIImage(named: "radio_unchecked"){

        sender.setImage(UIImage(named: "radio_checked"), for: .normal)

    }else{

        sender.setImage(UIImage(named: "radio_unchecked"), for: .normal)
    }
}

在情节提要中拖放两个UIButton,将其IBOutlet连接到“两个按钮”,然后使用相同的动作插座将它们连接。

enter image description here

添加图像,并通过“在空间之前添加”来设置按钮标题的另一件事。

enter image description here

像这样在情节提要中更改路线。

enter image description here

这就是您的输出:

enter image description here