我发现 watchOS 8.1RC 中存在从 TabView 触发的 NavigationLink 的回归。马上就被驳回了。
它在 watchOS 8.0 或模拟器 (watchOS 8.0) 中运行。你知道解决方法吗?谢谢
示例代码:
import SwiftUI
@main
struct TestNavigationApp: App {
var body: some Scene {
WindowGroup {
NavigationView {
ContentView()
}
}
}
}
struct ContentView: View {
var body: some View {
List {
NavigationLink(destination: ContentView1()) {
Text("To TabView")
}
}
}
}
struct ContentView1: View {
var body: some View {
TabView {
NavigationView {
NavigationLink(destination: ContentView2()) {
Text("To ContentView2")
}
}
VStack {
Text("Screen2") …Run Code Online (Sandbox Code Playgroud) apple-watch swiftui swiftui-navigationlink swiftui-tabview watchos-8
我正在尝试本地化我的 SwiftUI Watch 应用程序。我对静态字符串没有任何问题。我在文本视图中使用 LocalizedKeyStrings 并在 Localizable.strings 文件中添加我的翻译。例如:
Text("history")
Run Code Online (Sandbox Code Playgroud)
在 Localizable.strings 中:
"history" = "Historique";
Run Code Online (Sandbox Code Playgroud)
结果:“历史”
但我也想使用插值来定位蜇伤。例如:
Text("startCustom \(format: "%.1f",customDistance)")
Run Code Online (Sandbox Code Playgroud)
在 Localizable.strings 中,我尝试了不同的语法:
"startCustom %@" = "Course de %@ km";
Run Code Online (Sandbox Code Playgroud)
或者
"startCustom %f" = "Course de %f km";
Run Code Online (Sandbox Code Playgroud)
或者
"startCustom %.1f" = "Course de %.1f km";
Run Code Online (Sandbox Code Playgroud)
什么都行不通。我没有找到任何文件...
我正在为 Apple Watch 构建跑步锻炼项目,但在实现“自动暂停”功能时遇到问题。委托HKWorkoutSessionDelegate : workoutSession(_:didGenerate:)应该获取系统生成的一些暂停事件。
我遇到的问题是我的会话永远不会启动:暂停事件立即发送给委托。
我的代码:
func workoutSession(_ workoutSession: HKWorkoutSession, didGenerate event: HKWorkoutEvent) {
// press 2 buttons
if(event.type == HKWorkoutEventType.pauseOrResumeRequest) {
print("Detected Press")
if workoutData.isPaused == false {
pauseWorkout()
}
else {
resumeWorkout()
}
}
// Auto-pause
if event.type == HKWorkoutEventType.motionPaused && workoutSettings.autoPause {
print("Auto Pause")
pauseWorkout()
}
if event.type == HKWorkoutEventType.motionResumed && workoutSettings.autoPause {
print("Auto Resume")
resumeWorkout()
}
}
Run Code Online (Sandbox Code Playgroud)
问题出现在“//自动暂停”部分。我错过了什么吗?
swiftui ×2
appdelegate ×1
apple-watch ×1
healthkit ×1
localization ×1
pause ×1
swift ×1
watchkit ×1
watchos-8 ×1