Lor*_*Foe 11 ios swift swiftui
我尝试创建一个(添加/加号)按钮,该按钮显示一个菜单,我们可以从中选择要执行的操作(它类似于 iPhone 上的“文件”或“便笺”应用程序)
.navigationTitle("Hello World Everyone")
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
Menu(content: {
Button(action: {print("option A")}, label: {Label("My option A", systemImage: "folder.badge.plus")})
Button(action: {print("option B")}, label: {Label("My option B", systemImage: "doc.badge.plus")})
}, label: {
Image(systemName: "plus")
.imageScale(.large)
.background(Color.red)
})
}
}
Run Code Online (Sandbox Code Playgroud)
但问题是,点击这个“加号”按钮非常困难!另一方面,如果我使用传统的 Button 块而不是 Menu 块,这个问题就会消失(但当然我失去了我想要的功能)(在 Xcode 13b4 中不再是这种情况)
你有什么想法?
编辑1:
很少有人建议我在菜单标签上添加填充,这是一个好主意,但这就是为什么它不完美的原因:
可点击区域(以红色表示)不会到达屏幕的后边缘(参见紫色绘图)。因此,如果用户不幸点击了添加按钮的这一侧(紫色区域),则点击将不起作用:换句话说,点击此按钮仍然非常困难!
另一个问题是加号图标从默认位置向左移动
小智 0
如果你在SwiftUIButton内部使用,它会自动将其转换为,而在. 您可以传递 Custom ,而不是传递 a 。ToolbarToolBarButtonToolBarButtonButtonView
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
Menu(content: {
Label("My option A", systemImage: "folder.badge.plus")
.onTapGesture {
print("My option A")
}
Label("My option B", systemImage: "doc.badge.plus")
.onTapGesture {
print("My option B")
}
}, label: {
Image(systemName: "plus")
.imageScale(.large)
.background(Color.red)
})
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1578 次 |
| 最近记录: |