小编Fit*_*ill的帖子

iOS 14 UNNotificationPresentationOptions.list、.banner 与警报

您好,我正在尝试显示一些通知数据。在我的通知中,我有一个通知 ID,可以根据推送的信息做出不同的反应。

我只是看不到那些新的 UNNotificationPresentationOptions 是什么。

在我的

userNotificationCenter(_: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void)
Run Code Online (Sandbox Code Playgroud)

我有

 if notification.request.content.userInfo[keyName] as? String == "someId" {
     // Bla bla stuffs
     if #available(iOS 14.0, *) {
         completionHandler([.list, .banner, .sound])
     } else {
         completionHandler([.alert])
     }
  } else if ...
Run Code Online (Sandbox Code Playgroud)

但是当使用 [.banner] 或 [.list] 或 [.banner, .list] (没有 .alert)时,我在前台什么也没有。在理想的情况下,我希望在通知中心列出通知并在我的应用程序中显示相关信息(在调用完成处理程序之前)。

我使用这些选项正确吗?

notifications swift ios14

31
推荐指数
2
解决办法
1万
查看次数

SwiftUI @State 和 .sheet() ios13 与 ios14

您好,我在这里遇到了一个问题,在 ios13 或 ios14 上运行时,我的 .sheet() 视图之间没有一致的行为

我有这样的看法:

@State private var label: String = "" 
@State private var sheetDisplayed = false
///Some code
var body: some View {
   VStack {
      Button(action: {
         self.label = "A label"
         self.isDisplayed = true
      }) {
           Text("test")
       }
   }.sheet(isPresented: $sheetDisplayed, onDismiss: {
        self.label = ""
    }) {
        Text(self.label)
       }
 }
Run Code Online (Sandbox Code Playgroud)

在 ios 13 上,这项工作按预期进行 btn 单击 -> 设置标签 -> 调用表 -> 在文本视图中显示“A 标签”。

在 ios14 上,我在工作表关闭时在 self.label 中得到一个空字符串,因此它不显示任何内容。

我错过了什么吗?这是 iOS 14 的错误还是我在 ios13 上弄错了并得到了纠正。

PS:我有几个其他变量在我简化的闭包中传递。

ios13 swiftui ios14

9
推荐指数
1
解决办法
1511
查看次数

SwiftUI TabView 动画

我的应用程序目前面临 pb 问题。我想对由 SwiftUI TabView 控制的项目的插入和删除进行动画处理。

这是重现问题的简单视图

struct ContentView: View {
    @State private var selection: Int = 1
    var body: some View {
        TabView(selection: $selection.animation(),
                content:  {
                    Text("Tab Content 1")
                        .transition(.slide) //could be anything this is for example
                        .tabItem { Text("tab1") }.tag(1)
                        .onAppear() {print("testApp")}
                        .onDisappear(){print("testDis")}
                    Text("Tab Content 2")
                        .transition(.slide)
                        .tabItem { Text("tab2") }.tag(2)
                })
       
    }
}
Run Code Online (Sandbox Code Playgroud)

当点击 tabItem 时,它会立即从“选项卡内容 1”切换到“选项卡内容 2”,我想为其设置动画(而不是选项卡项按钮实际的选项卡内容)。和被按预期调用onAppearonDisapear因此所有转换都应该被触发。

如果有人有想法开始合作,我会很高兴

谢谢

swift swiftui ios14

3
推荐指数
1
解决办法
3330
查看次数

标签 统计

ios14 ×3

swift ×2

swiftui ×2

ios13 ×1

notifications ×1