我有一个控件,它设置一个@State变量以在自定义选项卡 View 中跟踪选定的选项卡。我可以通过设置以下内容在代码中设置@State变量:

@State var selectedTab: Int = 1

如何以编程方式设置初始值,以便在创建 View 时可以更改选定的选项卡?

我尝试了以下方法:

1:
@State var selectedTab: Int = (parameter == true ? 1 : 2)

2:
init(default: Int) {
    self.$selectedTab = default
}

最佳答案

我如何在其中一个 View 中设置初始状态值的示例:

struct TodoListEdit: View {
    var todoList: TodoList
    @State var title = ""
    @State var color = "None"

    init(todoList: TodoList) {
        self.todoList = todoList
        self._title = State(initialValue: todoList.title ?? "")
        self._color = State(initialValue: todoList.color ?? "None")
    }

10-08 20:06