我尝试为Apple Watch开发我的第一个应用程序。目的是拥有一个进度条。目的地是Xcode 12,iOS14和watchOS 7
我的代码如下
struct ContentView: View {
@State var secondScreenShown = false
@State var timerVal = 1
var body: some View {
VStack{
Text("\(timerVal)")
.font(.system(size: 14))
Picker(selection: $timerVal, label: Text(""))
Text("Daily").tag(100)
}
NavigationLink(
destination: SecondView(
secondScreenShown: $secondScreenShown,
timerVal: timerVal
),
isActive: $secondScreenShown,
label: {Text("Go")})
}
}
}
struct SecondView: View {
@Binding var secondScreenShown:Bool
@State var timerVal:Int
@State var img = "single100"
var body: some View {
VStack{
if timerVal > 0 {
Image(uiImage: UIImage(systemName: self.img))
.resizable()
.onAppear(){
Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true){ _ in
if self.timerVal > 0 {
self.timerVal -= 1
self.img = String(format: "single%count", self.timerVal)
}
}
}
} else {
Image("single0")
.resizable()
}
}
}
}
我在Assets中有100张图像。xcassets都具有相同的前缀“单”,然后从0到100计数。
但是似乎我无法将图像添加到主体并使用Timerevent进行切换。
计时器自动工作并从第一个视图中的选定值开始计数,然后显示图像single0。但是我认为只添加一个Imagecontainer并更改imagefile self应该可以。
能否请您给我一个提示,我该如何对此做一些更改?