swift - 在 SwiftUI 中从视图中删除焦点环
问题描述
我正在使用 SwiftUI 制作一个 macOS 应用程序,我想在其中使用箭头键来偏移Circle
视图。我唯一的问题是我的Circle
视图被蓝色对焦环包围,我想将其移除,但不知道如何移除。除此之外,我的代码工作正常。(见下图,我想去掉蓝色边框)
我在 Stack Overflow 上发现了很多关于从 a 中删除焦点环的问题TextField
,但对于其他类型的视图却没有。如何TextField
使用 SwiftUI 从非视图中移除对焦环?如果无法做到这一点,没有对焦环,我还能如何实现相同的功能?
代码:
struct UITestbed: View {
@State private var xInput: CGFloat = 0
@State private var yInput: CGFloat = 0
var body: some View {
Circle()
.frame(width: 20, height: 20)
.focusable()
.offset(x: self.xInput, y: self.yInput)
.onMoveCommand { (direction) in
withAnimation(.easeInOut) {
switch direction {
case .right:
self.xInput += 10
case .left:
self.xInput -= 10
case .up:
self.yInput -= 10
case .down:
self.yInput += 10
default:
fatalError("Unknown move command")
}
}}
}
}
解决方案
推荐阅读
- php - PHP websocket - 无法构建框架
- delphi - 如何使用 Delphi FMX 通讯簿组件获取手机号码
- intellij-idea - 在 Intellij 类图中编辑连接器
- python - 如何在 3d 图中绘制 2d 图像以计算对象深度作为 z 轴?
- android - 仅使用 8 GB RAM 构建 AOSP
- c - 为什么每次运行代码时第一个随机值都会增加?
- java - W/System.err: org.json.JSONException: org.json.JSONArray 类型为 0 的值 [] 无法转换为 JSONObject
- unity3d - Unity2D在撞墙后停止物体移动
- arrays - 从另一个文件中读取 URL 并抓取数据 - Bash
- php - 无法使用php aws S3Client从Localstack s3存储桶中获取列表对象