小编Pra*_*tti的帖子

如何在 SwiftUI 中使用 DatePicker 创建提醒

我想DatePicker在警报视图或操作表视图中显示,但我找不到任何资源来执行此操作。

我想要以下视图。

谢谢您的帮助

在此输入图像描述

ios swiftui

5
推荐指数
1
解决办法
4935
查看次数

将数据从 UIKit 传递到 SwiftUI(容器 UIHostingController)

如何在UIViewController和之间传递数据struct ContentView

我试过,ObservableObject但我无法获得最新的数据。

swift swiftui

5
推荐指数
3
解决办法
2207
查看次数

SwiftUI NavigationLink push in onAppear 使用@ObservableObject 时立即弹出视图

我想以编程方式能够浏览到内的一个链接ListNavigationLinks时候出现视(深深的建设从推送通知链接)。我有一个字符串 -> Bool 字典,它绑定到Binding<Bool>我的视图中的自定义。当视图出现时,我设置了 bool 属性,导航发生,但是,它立即弹出。我按照SwiftUI NavigationLink 中的答案立即导航回并确保中的每个项目List都有唯一的标识符,但问题仍然存在。

两个问题:

  1. 我这里的绑定逻辑是否正确?
  2. 为什么视图会立即弹出?
import SwiftUI

class ContentViewModel: ObservableObject {
    @Published var isLinkActive:[String: Bool] = [:]
}

struct ContentViewTwo: View {
    @ObservedObject var contentViewModel = ContentViewModel()
    @State var data = ["1", "2", "3"]
    @State var shouldPushPage3: Bool = true

    var page3: some View {
        Text("Page 3")
            .onAppear() {
                print("Page 3 Appeared!")
        }
    }

    func binding(chatId: String) -> Binding<Bool> {
        return .init(get: …
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui swiftui-navigationlink

5
推荐指数
1
解决办法
2550
查看次数

提高 VNDetectHumanBodyPoseRequest 的身体跟踪性能

我正在尝试提高通过身体跟踪绘制骨骼的性能,VNDetectHumanBodyPoseRequest即使距离超过 5 米,并且使用稳定的 iPhone XS 摄像头。

\n

跟踪对我身体右下肢的置信度较低,明显滞后且存在抖动。我无法复制今年 WWDC演示视频中展示的性能。

\n

以下是相关代码,改编自Apple的示例代码

\n
class Predictor {\n\xc2\xa0\xc2\xa0func extractPoses(_ sampleBuffer: CMSampleBuffer) throws -> [VNRecognizedPointsObservation] {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0let requestHandler = VNImageRequestHandler(cmSampleBuffer: sampleBuffer, orientation: .down)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0let request = VNDetectHumanBodyPoseRequest()\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0do {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0// Perform the body pose-detection request.\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0try requestHandler.perform([request])\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0} catch {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0print("Unable to perform the request: \\(error).\\n")\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0}\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0return (request.results as? [VNRecognizedPointsObservation]) ?? [VNRecognizedPointsObservation]()\n\xc2\xa0\xc2\xa0}\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我已经捕获了视频数据并正在此处处理示例缓冲区:

\n
class CameraViewController: AVCaptureVideoDataOutputSampleBufferDelegate {\n\n  func captureOutput(_ output: AVCaptureOutput, didOutput sampleBuffer: CMSampleBuffer, from connection: AVCaptureConnection) {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0let observations = try? predictor.extractPoses(sampleBuffer)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0observations?.forEach { processObservation($0) …
Run Code Online (Sandbox Code Playgroud)

vision avfoundation ios swift avkit

5
推荐指数
1
解决办法
1282
查看次数

无法使用 Xcode 12.0 beta 5 构建项目

我下载了 Xcode 12.0 beta 5 并尝试构建我的项目,但收到以下错误:

<unknown>:0: error: unable to load standard library for target 'arm64-apple-ios9.0'
Run Code Online (Sandbox Code Playgroud)

我尝试在线搜索解决方案,但我发现的所有内容都没有帮助我解决此错误。我在 SO 上找到了这个线程,但没有一个提议的解决方案对我有用。

我认为这是与模拟器有关的错误。事实上,该项目使用通用设备和真实设备正确构建。

ios ios-simulator swift xcode12

5
推荐指数
1
解决办法
4090
查看次数

Flutter/Dart DateTime 解析 UTC 并转换为本地

我正在尝试将 UTC 日期字符串DateTime解析为本地时间,然后将其解析为本地时间,但是我在将其转换为本地时间时遇到了麻烦。在英国,它应该是加一,但是当我打印时.isUtc它返回为假。

这就是我现在所拥有的:

print(widget.asset.purchaseDate);
DateTime temp = DateTime.parse(widget.asset.purchaseDate);
print(temp.toLocal());
Run Code Online (Sandbox Code Playgroud)
I/flutter (5434): 2020-05-07 21:29:00
I/flutter (5434): 2020-05-07 21:29:00.000
Run Code Online (Sandbox Code Playgroud)

dart

4
推荐指数
1
解决办法
4460
查看次数

如何使用 SwiftUI 在 iPad 上运行拆分视图?

似乎有一种简单的方法可以让漂亮的 iOS 应用程序在 iPad 空间上运行。一个不涉及重写 SwiftUI 应用程序的。

基本SplitView&SplitViewController问题似乎......就像一个深思熟虑的问题空间......我有一个基本的 - 带有 ContentView 的显示卡 - 我希望它在 iPad 上运行......只是一个更大的视口...... .

有什么简单的方法可以使用 SwiftUI 完成此操作吗?

ipad ios swiftui

4
推荐指数
1
解决办法
1322
查看次数

在嵌入对象上使用 CriteriaBuilder

我正在尝试使用@Embeddablewith根据嵌入的属性CriteriaBuilder过滤父项Entity的结果。我使用 Eclipse Link 来生成元数据类。

这是嵌入的类/实体:

@Embeddable
public class Stamp implements Serializable {

   @Basic()
   @Column(name = "stamp_year", nullable = false)
   private int year;
Run Code Online (Sandbox Code Playgroud)

父类具有Stamp作为成员:

@Entity(name = "Message")
public class Message implements Serializable {

   @Embedded
   private Stamp stamp = new Stamp();
Run Code Online (Sandbox Code Playgroud)

现在这段代码应该使用Message基于嵌入类属性年份的类和过滤结果:

    CriteriaBuilder cb = em.getCriteriaBuilder();
    CriteriaQuery<Message> cq = cb.createQuery(Message.class);
    Root<Message> root = cq.from(Message.class);
    Predicate p = cb.conjunction();
    p = ??????
    cq.where(p);
    TypedQuery<Message> tq = em.createQuery(cq);
    List<Message> messages = tq.getResultList();
Run Code Online (Sandbox Code Playgroud)

在第 5 …

jpa eclipselink embeddable metamodel

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

Flutter:如何绘制星星

我正在尝试自定义容器形状,如下所示:

在此输入图像描述

我尝试使用 customPaint 来完成此操作,但我不太了解这个小部件,所以我需要帮助。

我怎样才能画出这样的形状?customPaint 是正确的解决方案吗?

android ios flutter flutter-layout

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

带有 CocoaPods shell 脚本的 Xcode Cloud 项目在本地构建,但在云上失败

我目前正在作为 Apple 私人测试版计划的成员测试 Xcode Cloud,并在尝试在云上为我的项目存档/构建(任何操作)时遇到问题。

该项目是一个相当基本的 SwiftUI 应用程序,具有 CocoaPods 依赖项。我已按照Apple 描述的步骤将 CocoaPods 集成到我的项目中,只需将我的 Pods 目录提交到 GitHub。但是,对于每次尝试的操作,我都会在云上收到构建错误:

命令 PhaseScriptExecution 失败,退出代码非零

这是ASC日志供参考:

Xcode 云错误日志

这很奇怪,因为同一个项目在我的本地计算机上成功构建和存档。我在工作流程编辑器中使用了与本地 Xcode 版本相同的 macOS 和 Xcode 版本。

我该如何解决这个错误?

xcode ios xcode-cloud

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

监听时在颤振中使用 Provider 的问题:true

我正在 Flutter 中开发一个应用程序。我尝试在应用程序中使用 Provider 但遇到了这个错误:

Tried to listen to a value exposed with provider, from outside of the widget tree.
E/flutter ( 2850): 
E/flutter ( 2850): This is likely caused by an event handler (like a button's onPressed) that called
E/flutter ( 2850): Provider.of without passing `listen: false`.
E/flutter ( 2850): 
E/flutter ( 2850): To fix, write:
E/flutter ( 2850): Provider.of<Complexes>(context, listen: false);
E/flutter ( 2850): 
E/flutter ( 2850): It is unsupported because may pointlessly rebuild the widget associated to …
Run Code Online (Sandbox Code Playgroud)

provider android ios android-studio flutter

2
推荐指数
2
解决办法
5003
查看次数

SwiftUI 中的条件格式

我想格式化文本。

Text("Hello")
.foregroundColor(self.amount > 20 ? .blue : .white) 
Run Code Online (Sandbox Code Playgroud)

你会如何添加另一个条件:

if self.amount > 100 and self.amount > 200 
Run Code Online (Sandbox Code Playgroud)

等等?

swift swiftui

2
推荐指数
2
解决办法
4366
查看次数

我可以在 Swift 中使用 actor 始终在主线程上调用函数吗?

我最近看到 Swift 在Swift 5.5 中引入了对 Actor 模型的并发支持。当我们有一个共享的、可变的状态时,这个模型支持安全的并发代码以避免数据竞争。

我想避免应用程序 UI 中的主线程数据竞争。为此,我将DispatchQueue.main.async在调用站点中设置UIImageView.image属性或UIButton样式的任何地方进行包装。

// Original function
func setImage(thumbnailName: String) {
    myImageView.image = UIImage(named: thumbnailName)
}

// Call site
DispatchQueue.main.async {
    myVC.setImage(thumbnailName: "thumbnail")
}
Run Code Online (Sandbox Code Playgroud)

这似乎不安全,因为我必须记住在主队列上手动调度该方法。另一种解决方案如下所示:

func setImage(thumbnailName: UIImage) {
   DispatchQueue.main.async {
      myImageView.image = UIImage(named: thumbnailName)
   }
}
Run Code Online (Sandbox Code Playgroud)

但这看起来像很多样板文件,我不会说我喜欢将它用于具有不止一层嵌套的复杂功能。

Swift 对 Actors 的支持看起来像是一个完美的解决方案。那么,有没有办法让我的代码更安全,即始终使用 Actors 在主线程上调用 UI 函数?

multithreading ios swift swift5.5

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