macOS中使用SwiftUI实现底部的工具栏

3
在我的macOS应用程序中,我有一个位于顶部的主工具栏。但是,我想在底部(更小)添加一个新的底部工具栏。
例如,像这样: enter image description here 似乎在macOS上无法像iOS那样实现这一点。
.toolbar {          
                ToolbarItemGroup(placement: .bottomBar) {
                    // add wine
                    AddButton()
                    Spacer()
                }
            }

=> 在 macOS 上不存在 .bottomBar。

好的,在创建带有一些按钮的自定义视图/内容之前,我想确保在 macOS 上没有官方的方法来实现这一点(仅使用 SwiftUI...)。


1
纯粹为了帮助您轻松构建自己的界面,我想指出这不是macOS上常见的UI模式,因此我认为这需要进行定制工作。引用相关的HIG部分:“在iPadOS和macOS中,工具栏出现在屏幕或窗口的顶部。” - Alex Fringes
我同意... 但是在iPad上,我可以用.toolbar修饰符在底部创建一个工具栏。 - alex.bour
请勿在macOS上执行此操作,您需要根据平台重新设计。(嗨,Alexs) - aehlke
1个回答

3

我喜欢SwiftUI中苹果的声明式统一工具栏API。请参见这里这里。它允许多平台开发人员以她想要的方式设计应用程序,但有一个不幸的例外:它不允许在macOS上使用底部工具栏。我理解@Alex Fringes和@aehlke的观点,即这个例外符合苹果官方的人机界面指南,该指南规定对于iPadOS和macOS,工具栏应仅出现在窗口顶部。但是,在我看来,至少对于我的应用程序而言,这个指南没有任何意义。在我的应用程序中,我有很多按钮和滑块,以便用户可以对显示进行大量控制。这些项目逻辑上分为两组。因此,将一组放在顶部,另一组放在底部对我的应用程序是有意义的。然而,缺乏对于macOS的.bottomBar支持阻止了我使用SwiftUI的Toolbar API。我不得不手动实现所有内容。

我觉得很荒谬,小屏幕设备(例如我的iPhone)可以同时拥有顶部和底部工具栏,但大屏幕设备(例如我的Mac)却不能。希望苹果公司能够解决这个问题!


我意识到工具栏位于底部时,对话框确认按钮会非常有用。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接