import SwiftUI
struct ContentView : View {
var body: some View {
PasswordGeneratorSettings(settingsConfiguration: PasswordGeneratorSettings.Settings.init(passwordLength: 20))
}
}
struct PasswordGeneratorSettings : View {
@State var settingsConfiguration: Settings
struct Settings {
var passwordLength = UInt()
}
var body: some View {
NavigationView {
List {
Slider(value: $settingsConfiguration.passwordLength) { pressed in
Text("Password Length: \(settingsConfiguration.passwordLength)")
}
}.navigationBarTitle(Text("Settings"))
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以我正在制作一个密码生成器,我想从一个最小长度为 1 、最大长度为 512 的滑块开始,并带有一个显示其值(作为整数)的标签,但这就是我所需要尝试的表格视图(列表)左侧的更新标签,右侧的滑块,但这甚至无法编译。
太久没读:我正在尝试:
了解如何使用滑块设置最小值和最大值
在表格视图单元格的左侧有一个带有滑块值(作为整数)的标签,滑块在右侧。
我想在没有 UIKit 的情况下仅使用 SwiftUI 来完成所有这一切(如果需要的话还可以组合)。
您的代码无法编译,因为您需要在滑块值参数中使用 double 。您可以使用以下代码来实现您的要求。Slider 采用三个参数值:from 和 through。用简单的语言来说,从是 minValue,到是 maxValue,并且在任何给定时间“value”将返回滑块中的当前值。
struct PasswordGeneratorSettings : View {
@State var settingsConfiguration: Settings
struct Settings {
var passwordLength: Double = 1.0
}
var body: some View {
NavigationView {
List {
HStack {
Text("Password Length: \(Int(settingsConfiguration.passwordLength))")
Slider(value: $settingsConfiguration.passwordLength, from: 1, through: 512)
}
.padding()
}.navigationBarTitle(Text("Settings"))
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6506 次 |
| 最近记录: |