草庐IT

Swift-Mailer

全部标签

swift - 自定义类存储 - 无法编码结构

我正在尝试使用UserDefaults存储自定义类的数组。自定义类用于混合使用字符串和CLLocationCoordinate2D的注释。当我在mapView中执行长按手势时,我正在调用ArchiveUtil.savePins(pins:pins)。但是,我收到一个错误-[NSKeyedArchiverencodeValueOfObjCType:at:]:thisarchivercannotencodestructs'知道我做错了什么吗?谢谢,代码如下:classPinLocation:NSObject,NSCoding,MKAnnotation{vartitle:String?var

swift - 是否可以创建全 View Controller 的图像(不仅仅是屏幕上的内容)?

这是我目前使用的代码:funcconfigureMailController()->MFMailComposeViewController{UIGraphicsBeginImageContext(self.view.bounds.size);self.view.layer.render(in:UIGraphicsGetCurrentContext()!)letscreenShot=UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();letmailComposerVC=MFMailComposeV

swift - 未调用 LinkedIn Swift session 创建完成处理程序

我正在尝试为我的应用创建基本的LinkedIn登录并获取用户的个人资料url。我在我的项目中安装了LinkedInSDK。一些注意事项:在info.plist中,我适本地放置了linkedinURLScheme、LSApplicationQueriesScheme和ExceptionDomains属性。在我的应用委托(delegate)中,我有funcapplication(_application:UIApplication,openurl:URL,sourceApplication:String?,annotation:Any)->Bool{ifLISDKCallbackHandl

swift - 如何使用 Firebase 和 Swift 快速获得关注者和关注人数

我目前正在尝试使用firebase获取特定用户的所有关注者。在我的didSet子句中,我调用函数setFollowingCount()来获取当前用户关注的用户并将其分配给文本字段:varuser:User?{didSet{setFollowingCount()guardletfollowing=self.user?.followingelse{return}letattributedText=NSMutableAttributedString(string:"\(following)\n",attributes:[NSAttributedStringKey.font:UIFont.bo

ios - Swift:如何重用 View Controller

我正在开发一个简单的自定义转换器应用程序。问题是我为每个(!)转换(华氏度到摄氏度,盎司到千克等等)创建了一个单独的ViewController,我想知道如何只重用一个转换器ViewController并改变在后台完成计算?这是我到目前为止所做的:mainVC(包含每个转换器viewController的按钮)(现在有10个)用户可以进行的每次转换的转换器VCMathLib.swift为每个数学公式提供不同的函数每个转换器VC都包含一个名称标签(例如盎司到千克)、一个数字键盘和一个输入/输出标签。当用户触摸一个数字时,使用MathLib.swift中的正确数学公式即时完成转换。我只是使

swift - URLSession downloadTask 在后台运行时的行为?

我有一个应用程序需要下载一个可能相当大的文件(可能大到20MB)。我一直在阅读URLSessiondownloadTasks以及当应用程序进入后台或被iOS终止时它们如何工作。我希望继续下载,根据我的阅读,这是可能的。我找到了一篇博文here详细讨论了这个主题。根据我所读到的内容,我首先创建了一个如下所示的下载管理器类:classDownloadManager:NSObject,URLSessionDownloadDelegate,URLSessionTaskDelegate{staticvarshared=DownloadManager()varbackgroundSessionCo

iOS swift : How to dismiss keyboard before compute-intensive code?

我有一个带有文本字段的View,用户将使用数字键盘输入一个整数。然后用户点击按钮进行计算。计算是CPU密集型的,需要几秒或更长时间才能完成,具体取决于输入。如果我尝试在代码运行之前关闭键盘,它不会被关闭——代码首先运行。(下面的示例代码)此代码的后台线程是否需要键盘关闭才能正常工作?@IBOutletweakvarnumberField:UITextField!@IBActionfuncrunCPUIntensiveCode(_sender:UIButton){numberField.resignFirstResponder()runCode()} 最佳答案

swift - 尝试在 Swift 中上传时本地文件不可读

我正在使用DLFTPClient进行sftp上传。这是我的代码。varconnection:DLSFTPConnection=DLSFTPConnection(hostname:"192.168.1.1",port:2222,username:"test",password:"test")varremoteBasePath="/test"varlocalPath:String=Bundle.main.url(forResource:"test",withExtension:".jpg")?.absoluteStringvarrequest:DLSFTPRequest?overridef

swift - 对 swift 中弱委托(delegate)的困惑

假设我们有一个协议(protocol)protocolMyProtocol{funsomeFunc()}classAClass{vardelegate:MyProtocol?}AClass不关心委托(delegate)是类还是结构。我想要的是有时委托(delegate)可以是一个类,有时可以分配给一个结构。我的问题是我是否应该让委托(delegate)变得“弱”。如果是这样,我必须让MyProtocol成为一个“类协议(protocol)”,这样委托(delegate)就只能是一个类。如果不是,当我将委托(delegate)分配给类时,如何避免保留循环?感谢任何提示!

ios - Swift 4 准备(用于 segue :) not being called

我有一个SplitViewController,当我单击TableView中的项目时,它不会调用我的prepare(forsegue:)方法。这是我的prepare(forsegue:)方法:overridefuncprepare(forsegue:UIStoryboardSegue,sender:Any?){print("Here");ifsegue.identifier=="showPOsDetail"{ifletindexPath=tableView.indexPathForSelectedRow{letobject=objects[indexPath.row]as!NSDate