【发布时间】:2021-08-19 12:03:03
【问题描述】:
我在列表 swiftUI 上遇到问题 我想删除切换下拉(黑色圆圈),而不禁用切换功能,因此在首次加载视图时会出现名称列表(蓝线)
这是我的代码,也许它有助于解决我的问题
struct IphoneProfileView: View {
@StateObject var companyViewModel = CompanyViewModel()
@StateObject var profileViewModel = ProfileViewModel()
@ObservedObject var employeeListViewModel = EmployeeListViewModel()
@ObservedObject var role: RoleService = .shared
var company: Company?
@State var companyName = ""
@State var editModeIphone: EditMode = .inactive {
didSet {
if editModeIphone.isEditing {
profileViewModel.isPinHidden = false
} else {
profileViewModel.isPinHidden = true
}
}
}
var body: some View {
VStack {
List {
Section(header: CompanyProfileHeader()) {
if editModeIphone.isEditing {
CompanyInfoNameTextField(
placeholder: "Company Inc.",
text: $profileViewModel.company.name
)
CompanyInfoTextField(
title: "Owner PIN",
placeholder: "1234",
text: $profileViewModel.company.ownerPin
)
}
ReviewPolicy()
}
Section(header: EmployeeListHeader()) {
ForEach(employeeListViewModel.employees) { employee in
EmployeeRow(employee: employee)
}
.onDelete(perform: employeeListViewModel.delete)
.onAppear {
UITableView.appearance().separatorStyle = .singleLine
}
}
}
}
.toolbar {
EditButton()
}
.navigationBarTitle("Profile", displayMode: .inline)
.environment(\.editMode, $editModeIphone)
.onAppear {
UITableView.appearance().separatorStyle = .none
}
}
}
【问题讨论】:
-
如果您希望您的问题得到解答,您需要让专家尽快获得具有可重现问题的工作样本。完美地,我应该将您的代码粘贴到我的示例项目中,并在我运行它时尽快看到问题。请添加[最小可重现示例]
-
@Philip 对不起,我忘了把我的代码放进去,我已经更新了我的问题,希望你能帮忙
-
@vandettadyckies 尝试简化代码 - 将其放入项目中不会运行。
标签: swift swiftui swiftui-list