SwiftUI 表格加粗
Posted
技术标签:
【中文标题】SwiftUI 表格加粗【英文标题】:SwiftUI sheets bolded 【发布时间】:2020-10-16 08:06:52 【问题描述】:当我使用 SwiftUI 呈现工作表时,所有内容都会变粗。如果我轻扫一下,粗体就会消失。
例子:
.navigationBarItems(leading:
Button(action:
self.isSheetPresented.toggle()
)
Text("Display")
.frame(width: 25, height: 45)
.sheet(isPresented: $isSheetPresented)
Textfield("Hello", text: $binding)
)
除了申请还有什么简单的解决方法
.fontWeight(.regular) or .font(.body)
对一切?
PS:在 MacOS 11.0 Beta (20A5395g) 上运行 Xcode 版本 12.2 beta 3 (12B5035g)
【问题讨论】:
【参考方案1】:尝试将工作表移出 navigationBarItems 并附加到正文内的某个视图,例如
// ... other views
.navigationBarItems(leading:
Button(action:
self.isSheetPresented.toggle()
)
Text("Display")
.frame(width: 25, height: 45)
)
...
// end of NavigationView
.sheet(isPresented: $isSheetPresented) // << here !!
Textfield("Hello", text: $binding)
【讨论】:
我在 SwiftUI 中遇到绝对严重的随机错误的次数令人难以置信。瞧,将.sheet
移到 navigationBarItems
之外解决了这个问题 - 真正的问题是为什么它甚至是一个问题
真的有效!我不明白为什么。我认为这是一个奇怪的错误。【参考方案2】:
好的,我做了一些测试:
.navigationBarItems(leading:
Button(action: self.showingSettings = true)
Image(systemName: "gear")
//.sheet(isPresented: $showingAddItem, content:
// AddView(expirations: self.expirations)
,
trailing:
Button(action: self.showingAddItem = true)
Image(systemName: "plus")
//.sheet(isPresented: $showingSettings, content:
// SettingsView()
)
.sheet(isPresented: $showingAddItem, content:
AddView(expirations: self.expirations)
)
.sheet(isPresented: $showingSettings, content:
SettingsView()
)
但是这样做,尾随按钮不起作用,只有前导按钮不起作用
【讨论】:
以上是关于SwiftUI 表格加粗的主要内容,如果未能解决你的问题,请参考以下文章
在 SwiftUI 中,如何将primaryAction ToolbarItem 加粗?
如何使用 XCUITest 查询 SwiftUI 表格单元格
SwiftUI - 如何将文本视图与另一个文本视图垂直对齐,以制作类似于正确对齐的表格?