8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

在 iPad 模拟器上运行时,SwiftUI TabView 在 NavigationSplitView 的侧栏视图中的宽度错误

Falcon Stakepool 2月前

54 0

我学习 SwiftUI 已经有一段时间了,它真的很棒。当我尝试在 NavigationSplitView 的侧边栏视图中添加 TabView 时,遇到了布局问题。它在 iPhone 上运行正常

我学习 SwiftUI 已经有一段时间了,它真的很棒。当我尝试 TabView 在 的侧边栏中 NavigationSplitView 。它在 iPhone 模拟器和 Mac 上按预期运行,但宽度 TabView 不正确。它比包含它的侧边栏更宽。

我做错了什么吗?请帮忙。谢谢。

struct TestView: View {
    var body: some View {
        NavigationSplitView {
            TabView {
                Text("This is sidebar 1")
                    .tabItem {
                        VStack {
                            Image(systemName: "gear")
                            Text("Sidebar 1")
                        }
                    }
                    .tag(0)
                Text("This is sidebar 2")
                    .tabItem {
                        VStack {
                            Image(systemName: "gear")
                            Text("Sidebar 2")
                        }
                    }
                    .tag(1)
            }
        } detail: {
            Text("This is detail")
        }
    }
}

enter image description here


使用自定义视图,结果相同。

enter image description here

帖子版权声明 1、本帖标题:在 iPad 模拟器上运行时,SwiftUI TabView 在 NavigationSplitView 的侧栏视图中的宽度错误
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Falcon Stakepool在本站《ios》版块原创发布, 转载请注明出处!
最新回复 (0)
  • @workingdogsupportUkraine 对于 UIKit 来说确实如此。但是,我不明白为什么这个 UI 组件不能嵌入到 SwiftUI 中的任何其他视图中,除非是 Apple 的人机界面指南。不过,这个问题似乎是布局问题。称之为错误。可以通过添加一个来解决这个问题

  • 默认 TabView 不应嵌入在 NavigationSplitView 或 NavigstionStack 中。Apple 的 HIG 明确指出,选项卡应相互排斥。它们不能共享导航,否则会导致无休止的错误。在 iOS 18 中(应在第 9 版之后发布 Beta 版),NavigationSplitView 具有 TabView 样式。您必须创建自定义 TabView 才能使其正常工作。

  • @loremipsum 很高兴听到 Apple 正在推出此功能,但不幸的是,我无法让它与自定义 TabView 配合使用,看看我的第二张图片,结果相同。无论如何,谢谢。

返回
作者最近主题: