Tal*_*lon 12 ios swift swiftui
更新到 iOS 15 和 Xcode 13 后,我的应用程序中的选择器不再显示自定义标签。在 iOS 14 设备上运行该应用程序,选择器呈现良好。
\n这是当前实现的代码片段,屏幕截图是目前在 iOS 15 模拟器中的样子。
\n @State var selectedNumber: Int = 0\n \n var body: some View {\n Picker(selection: $selectedNumber, label: customLabel) {\n ForEach(0..<10) {\n Text("\\($0)")\n }\n }\n }\n \n var customLabel: some View {\n HStack {\n Image(systemName: "paperplane")\n Text(String(selectedNumber))\n Spacer()\n Text("\xe2\x8c\xb5")\n .offset(y: -4)\n }\n .foregroundColor(.white)\n .font(.title)\n .padding()\n .frame(height: 32)\n .background(Color.blue)\n .cornerRadius(16)\n }\nRun Code Online (Sandbox Code Playgroud)\n\n
Tal*_*lon 20
@Adam 提供的答案有效。以下是我所做的修复工作,以防其他人偶然发现问题。
\n@State var selectedNumber: Int = 0\n\nvar body: some View {\n Menu {\n Picker(selection: $selectedNumber, label: EmptyView()) {\n ForEach(0..<10) {\n Text("\\($0)")\n }\n }\n } label: {\n customLabel\n }\n}\n\nvar customLabel: some View {\n HStack {\n Image(systemName: "paperplane")\n Text(String(selectedNumber))\n Spacer()\n Text("\xe2\x8c\xb5")\n .offset(y: -4)\n }\n .foregroundColor(.white)\n .font(.title)\n .padding()\n .frame(height: 32)\n .background(Color.blue)\n .cornerRadius(16)\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
10382 次 |
| 最近记录: |