统计用户浏览量 (SwiftUI)
Count user views (SwiftUI)
如何计算用户浏览量?
例如,用户打开了一个应用并获得了 +1 浏览量。
下次每次打开应用程序时,都会添加 1 个视图。以此类推,直到 100-200-300 等等
第一张图片,零观看次数
但是当用户打开应用程序两次时,就会有两个视图。每一个新发现都会增加一次观看
如果用户打开应用一百次,那么已经显示了一百次
这是我的代码:
struct views: View {
var body: some View {
VStack {
HStack {
Image(systemName: "eye")
.resizable()
.scaledToFit()
.frame(width: 50, height: 50)
Text("0")
.font(.system(size: 25))
.fontWeight(.bold)
.foregroundColor(Color.black)
.padding(.leading)
}
}
.frame(width: 250, height: 150)
.background(Color.gray.opacity(0.5))
.cornerRadius(10)
}
}
请帮助我,我是 swift 的新手,我将不胜感激,谢谢!
您可以使用 @AppStorage
来存储观看次数 (https://www.hackingwithswift.com/quick-start/swiftui/what-is-the-appstorage-property-wrapper)。
要知道应用程序何时激活并添加到计数器,您可以使用 @Environment(\.scenePhase)
(https://www.hackingwithswift.com/quick-start/swiftui/how-to-detect-when-your-app-moves-to-the-background-or-foreground-with-scenephase)。
struct ContentView: View {
@AppStorage("userViews") private var userViews = 0
@Environment(\.scenePhase) var scenePhase
var body: some View {
VStack {
HStack {
Image(systemName: "eye")
.resizable()
.scaledToFit()
.frame(width: 50, height: 50)
Text("\(userViews)")
.font(.system(size: 25))
.fontWeight(.bold)
.foregroundColor(Color.black)
.padding(.leading)
}
}
.frame(width: 250, height: 150)
.background(Color.gray.opacity(0.5))
.cornerRadius(10)
.onChange(of: scenePhase) { newPhase in
if newPhase == .active {
userViews += 1
}
}
}
}
如何计算用户浏览量?
例如,用户打开了一个应用并获得了 +1 浏览量。
下次每次打开应用程序时,都会添加 1 个视图。以此类推,直到 100-200-300 等等
第一张图片,零观看次数 但是当用户打开应用程序两次时,就会有两个视图。每一个新发现都会增加一次观看
如果用户打开应用一百次,那么已经显示了一百次
这是我的代码:
struct views: View {
var body: some View {
VStack {
HStack {
Image(systemName: "eye")
.resizable()
.scaledToFit()
.frame(width: 50, height: 50)
Text("0")
.font(.system(size: 25))
.fontWeight(.bold)
.foregroundColor(Color.black)
.padding(.leading)
}
}
.frame(width: 250, height: 150)
.background(Color.gray.opacity(0.5))
.cornerRadius(10)
}
}
请帮助我,我是 swift 的新手,我将不胜感激,谢谢!
您可以使用 @AppStorage
来存储观看次数 (https://www.hackingwithswift.com/quick-start/swiftui/what-is-the-appstorage-property-wrapper)。
要知道应用程序何时激活并添加到计数器,您可以使用 @Environment(\.scenePhase)
(https://www.hackingwithswift.com/quick-start/swiftui/how-to-detect-when-your-app-moves-to-the-background-or-foreground-with-scenephase)。
struct ContentView: View {
@AppStorage("userViews") private var userViews = 0
@Environment(\.scenePhase) var scenePhase
var body: some View {
VStack {
HStack {
Image(systemName: "eye")
.resizable()
.scaledToFit()
.frame(width: 50, height: 50)
Text("\(userViews)")
.font(.system(size: 25))
.fontWeight(.bold)
.foregroundColor(Color.black)
.padding(.leading)
}
}
.frame(width: 250, height: 150)
.background(Color.gray.opacity(0.5))
.cornerRadius(10)
.onChange(of: scenePhase) { newPhase in
if newPhase == .active {
userViews += 1
}
}
}
}