草庐IT

Swift-Mailer

全部标签

swift - 为 backgroundSession.uploadTask 实现完成处理程序

我(几乎)成功地实现了URLSessionDelegate、URLSessionTaskDelegate和URLSessionDataDelegate,这样我就可以在后台上传我的对象了。但是我不确定如何实现完成处理程序,以便在服务器返回时删除我发送的对象statuscode=200我目前像这样启动uploadTaskletconfiguration=URLSessionConfiguration.background(withIdentifier:"com.example.myObject\(myObject.id)")letbackgroundSession=URLSession(c

swift - 如何以编程方式保存 NSDocument?

我需要在控制文档View的NSViewController方法中以编程方式保存基于NSDocument的应用程序的事件文档。菜单项通过将save()发送给第一响应者来完成此操作。以编程方式执行此操作的最佳方法是什么?我应该A)获取对NSDocument的引用(以某种方式)然后调用保存方法还是B)向第一响应者发送保存:消息? 最佳答案 我会说(B)是最容易做到的。你所要做的就是从链下的任何NSResponder调用这一行(比如你的ViewController):NSApp.sendAction(#selector(NSDocument

swift - DispatchQueue.main.asyncAfter(deadline : . now() + 5.0) 如何在 Swift 3 中工作?

在Swift3中,GCD的语法发生了很大变化。对dispatch_after()的调用现在看起来像这样:DispatchQueue.main.asyncAfter(deadline:.now()+5.0){//dosomething}该代码会在block被调用5秒后调用它。这是如何运作的?文档说deadline参数是dispatch_time_t,它是UInt64的类型别名。我假设它是以纳秒为单位的马赫时间。但是,.now()+delay语法将小数秒添加到值中。DispatchTime.now()不返回UInt64吗?如果是这样,向其添加小数秒应该不起作用。如果有的话,我希望添加到.n

ios - Swift:对泛型类型 Range 的引用需要参数

我正在尝试创建一个返回Range的函数,但出现此错误:对泛型类型Range的引用需要...中的参数这是我的代码:funcrangOfSubString(msgStr:String)->Range{...}你们中有人知道为什么或解决此错误的方法吗?非常感谢您的帮助。 最佳答案 Range是在swift->Collection->Range中定义的通用公共(public)结构publicstructRange{....}因此您需要指定将具有并且必须实现可比较协议(protocol)的数据类型,使用类似这样的东西funcrangOfSub

swift - googlePlaces api 在解析后给出了错误的值

GooglePlaces.placeDetailsapi在解析后给出了错误的结果。Latlong返回相同但实际上如果我们在浏览器上点击API但在解析后出现错误则不会返回。GooglePlaces.placeDetails(forPlaceID:location.locationID,extensions:nil,language:nil){(response,error)inprint("lat",response!.result!.geometryLocation!.latitude)print("long",response!.result!.geometryLocation!.l

swift - 如何获取CKShare?

我可以生成共享并通过单击共享生成的链接正常获取它,但是一旦我关闭应用程序并再次打开它,它就全部消失了!我想做的是在没有链接的情况下访问共享...通过打开应用程序,加载已在第一时间接受的共享中的内容。有人知道怎么做吗?提前致谢 最佳答案 我明白了!首先,您需要获取所需共享的CKRecordZone。letsharedData=CKContainer.default().sharedCloudDatabasesharedData.fetchAllRecordZones{(recordZone,error)iniferror!=nil{p

ios - 以编程方式将 UILabels 和 UIButtons 添加到 Swift 中的 UIScrollView

我的目标是以编程方式创建多个UILabel和UIButton,然后以编程方式创建并将它们插入UIScrollView。我在下面的类中操作。classViewController:UIViewController{我首先创建了如下所示的scrollView。@IBOutletweakvarscrollView:UIScrollView!overridefuncviewDidLoad(){super.viewDidLoad()createTitleBar()//FunctionthatcreatesfixedbuttonsandlabelsnotincludedinscrollViewcr

ios - Swift - 带循环的多链 http 请求

自2天以来,我感觉我正在搜索整个网络来解决我的多个http请求问题。所以我的工作流程是这样的:上传图片到服务器响应=带有任务ID的XML格式使用任务ID向服务器发出GET请求,以检查此任务的状态。响应=XML格式,其中状态可以是“已完成”、“进行中”、“已排队”如果Status!="Completed"-重试第2步如果Status=="Completed"-转到第3步从resultUrl中下载结果我最后的尝试是使用PromiseKit以一种干净的方式链接请求,如本文所述:ChainmultipleAlamofirerequests.但是如果状态还没有完成,我不知道如何每2-5秒循环第二

swift - 类扩展 SKScene 但无法访问其属性

我有一个扩展SKScene的菜单类,但我无法访问View,这是SKScene的一个属性。相反,我收到以下错误:“实例成员‘view’不能用于菜​​单类型。”我需要做什么特别的事情才能访问它吗?看起来它应该已经可以调用它了。这是该类的简化版本:classMenu:SKScene{varblueButton:Button!vartouchNode:SKSpriteNode!varnewScene:SKScene?overridefuncdidMove(toview:SKView){blueButton=self.childNode(withName:"Start")as!Button}..

ios - 如何显示所有注释调用 Swift

我有一个有很多注释的应用程序,我希望在开始时打开他们的标注(如果可能的话永远不会消失)。从现在开始,我完成的是始终只出现一个,当我点击map时,它会随着这条线消失:mapView.selectAnnotation(mapView.annotations[1],animated:true)提前致谢。 最佳答案 我刚刚做了一些研究,我发现从公共(public)API和MKMapView机制这是不可能的。下面的代码只是选择一个注释,同时取消选择前一个。forannotationinmapView.annotations{mapView.s