首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于键盘的SwiftUI ToolbarItemGroup on iOS16

用于键盘的SwiftUI ToolbarItemGroup on iOS16
EN

Stack Overflow用户
提问于 2022-11-22 15:09:17
回答 1查看 26关注 0票数 0

由于新NavigationStack存在相当多的问题,包括目前相当严重的内存泄漏,我仍然使用带有iOS 15+构建目标的旧NavigationView。

但是,运行iOS 16的设备不再显示键盘中的ToolbarItemGroup内容。ToolbarItem(放置:.navigationBarTrailing)工作得很好,但是ToolbarItemGroup(放置:.keyboard)不再显示内容。

下面是用于键盘工具栏项的代码:

代码语言:javascript
复制
.toolbar {
    ToolbarItemGroup(placement: .keyboard) {
        HStack {
            Spacer()
            Button {
                isFocused = nil
            } label: {
                Image(systemName: "keyboard.chevron.compact.down")
            }
        }
    }
}

这应该显示在键盘顶部的图像,允许用户在点击上失去焦点。它在iOS 15上工作得很好,但在运行iOS 16的设备上却没有显示出来。

我在一个真正的设备上测试,而不是模拟器。

EN

回答 1

Stack Overflow用户

发布于 2022-11-22 15:49:38

这似乎是又一个iOS 16错误。如果您将整个键盘工具栏包装在一个HStack中,那么它将不会出现在iOS 16中,但是,如果您设想一个HStack首先隐式地包围了所有键盘工具栏元素,然后删除了HStack包装,那么一切都会正常工作。

此外,只要您的整个键盘工具栏没有包装在HStack中,您的工具栏中就可能有子堆栈元素。

以下是解决办法:

代码语言:javascript
复制
.toolbar {
    ToolbarItemGroup(placement: .keyboard) {
        Spacer()
        Button {
            isFocused = nil
        } label: {
            Image(systemName: "keyboard.chevron.compact.down")
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74534830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档