_PathPoint 类和 _PointQueue 类错误,不使用任何 pod。只需点击swiftui中的textField?

Posted

技术标签:

【中文标题】_PathPoint 类和 _PointQueue 类错误,不使用任何 pod。只需点击swiftui中的textField?【英文标题】:Class _PathPoint and Class _PointQueue error without use any pods. Just click on textField in swiftui? 【发布时间】:2021-11-02 13:08:54 【问题描述】:

我在视图上有一个 TextField。点击文本字段时收到以下警告。不确定为什么?下面是使用的代码。

这是可以点击按钮的视图。单击此按钮,将显示底部视图。

struct ContentView: View 
    @State var cardShown = false
    @State var cardDismissal = false

    var body: some View 
        NavigationView 
            ZStack 
                Button(action: 
                    cardShown.toggle()
                    cardDismissal.toggle()
                , label: 
                    Text("Show Card")
                        .bold()
                        .foregroundColor(Color.white)
                        .background(Color.blue)
                        .frame(width: 200, height: 50)
                )
                BottomCard(cardShown: $cardShown, cardDismissal: $cardDismissal, height: 400, content: 
                    CardContent()
                        .padding()
                )
            
        
    

这是文本字段所在的底部视图。在此文本字段上单击,出现错误。

struct CardContent: View 
    
    @State private var text = ""

    var body: some View 
        
        VStack 
            
            Text("Photo Collage")
                .bold()
                .font(.system(size: 30))
                .padding()
            
            Text("You can create awesome photo grids and share them with all of your friends")
                .font(.system(size: 18))
                .multilineTextAlignment(.center)
            
            TextEditor(text: $text)
                .frame(height: 100)
        
        .padding()
    

通用视图。

struct BottomCard<Content: View>: View 
    let content: Content
    @Binding var cardShown: Bool
    @Binding var cardDismissal: Bool
    let height: CGFloat
    init(cardShown: Binding<Bool>, cardDismissal: Binding<Bool>, height: CGFloat, @ViewBuilder content: () -> Content) 
        _cardShown = cardShown
        _cardDismissal = cardDismissal
        self.height = height
        self.content = content()
    
    
    var body: some View 
        ZStack 
            // Dimmed
            GeometryReader  _ in
                EmptyView()
            
            .background(Color.gray.opacity(0.5))
            .opacity(cardShown ? 1: 0)
            .animation(Animation.easeIn, value: 0.9)
            
            .onTapGesture 
                // Dismiss
                dismiss()
            
            
            // Card
            
            VStack 
                Spacer()
                
                VStack 
                  content
                    
                    Button(action: 
                        // Dismiss
                        dismiss()
                    , label: 
                        Text("Dismiss")
                            .foregroundColor(Color.white)
                            .frame(width: UIScreen.main.bounds.width/2, height: 50)
                            .background(Color.pink)
                            .cornerRadius(8)

                    )
                     .padding()
                
                //.background(Color(UIColor.secondarySystemBackground))
                .background(Color.yellow)
                .frame(height: height)
                .offset(y: (cardShown && cardShown) ? 0 : 800)
                .animation(Animation.default.delay(0.2), value: 0.2)
                .padding(.bottom, 300)
            
        
        .edgesIgnoringSafeArea(.all)
    
    
    func dismiss() 
        cardDismissal.toggle()
        //self.view.endEditing(true)
        DispatchQueue.main.asyncAfter(deadline: .now()+0.25)
            cardShown.toggle()
        
    

点击 textField 时出现以下错误。

objc[9303]: Class _PointQueue is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/ios.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore (0x129df7a50) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI (0x13c7b68d8). One of the two will be used. Which one is undefined.


objc[9303]: Class _PathPoint is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore (0x129df7a78) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI (0x13c7b68b0). One of the two will be used. Which one is undefined.

【问题讨论】:

如果没有Minimal Reproducible Example,就无法帮助您进行故障排除。您可能会在创建答案时找到答案。 我已经编辑了这篇文章。请检查。 我收到了同样的消息,但对我来说,当我使用键盘时,它似乎(仅发生一次)发生,即在准备中按下命令键来旋转模拟器。在设备上测试时我没有收到错误。你试过在设备上运行吗? 没有,我在模拟器上试过了。 【参考方案1】:

我也在寻找这个问题的答案,看来它可能只是“日志噪音”。我在另一个问题中找到了以下内容。

Apple 开发人员 Quinn “爱斯基摩人!” @开发者技术支持@苹果回答了这个问题here:

这本身不是错误。相反,它是 Objective-C 运行时 告诉你:

您的流程中的两个框架实现同一个类(嗯,在 本案例类,即_PathPoint和_PointQueue)。

运行时将使用其中一个,以未指定的方式选择它。

这可能很糟糕,但在这种情况下并非如此。两种实现 来自系统(嗯,模拟系统),因此你会 期望它们是同步的,因此哪个无关紧要 运行时使用。

因此,在这种特定情况下,这些日志消息只是 log noise。

【讨论】:

好吧,我受够了爱斯基摩人奎因。发送有关此小丑的消息,因为我想与他交谈。这些 consoleLog 错误是 BS,如果 Quinine 没有修复它们,他需要被解雇,因为他代表 Apple 发布了这个 BS。这是我第三次或第五次看到这篇文章。我怀疑这是由于引入了 M1 芯片,而 Apple 并没有费心修复这些问题。

以上是关于_PathPoint 类和 _PointQueue 类错误,不使用任何 pod。只需点击swiftui中的textField?的主要内容,如果未能解决你的问题,请参考以下文章

Java_类和方法笔记

Python-类和对象(__new__,__init__,classmethod)

Python-类和对象(__new__,__init__,classmethod)

Python基础——类和对象

python cookbook第三版学习笔记十二:类和对象创建新的类或实例属性

03-python的新式类和经典类区别