如何在UIStepper增加值时显示UISwitch

时间:2018-05-14 12:05:25

标签: ios objective-c uiswitch uistepper

我想做一个关于何时点击UIStepper并增加到1的任务,然后应该出现一个Switch,当再次点击UIStepper时,另一个开关应该显示在第一个开关下面。

当UIStepper增加时,我需要垂直显示至少5个开关。

private func regexMatch(string: String, pattern: String) -> Bool {
    if let range = string.range(of: pattern, options: .regularExpression) {
        let subString = string[range]
        if subString == string {
            return  true
        }
    }

    return false
}

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
    let result = (textField.text as NSString?)?.replacingCharacters(in: range, with: string) ?? string
    if regexMatch(string: result, pattern: "[0-9]+\\$*[0-9]*") || result.count == 0 {
        if regexMatch(string: result, pattern: "[0-9]+\\${0,1}") == false && result.count != 0 {
            print("Number format is incorrect")
        }
        return true
    } else {
        return false
    }
}

2 个答案:

答案 0 :(得分:0)

使用UIStackView。它会自动为您处理子元素的约束。参考

答案 1 :(得分:0)

在内部使用单个UISwitch的笔尖设计自定义单元格。 然后在UITableView下方设置UIStepper并加载您设计的单元格。

当您点击UIStepper时,只需增加UITableViewDataSource方法中的行数。