Tag: swift3

为什么我的API调用失败

我有以下代码: func convert(currencyToConvert:String,amount:Double,currencyToConvertTo:String,date:String)->Double{ makeConnection(date: date) usleep(80000) if let x = currencyRates[currencyToConvert]{ var a = 0.00 if currencyToConvert == "USD"{ a = amount*currencyRates["SGD"]! } else { a = (amount*currencyRates[currencyToConvertTo]!)/x } return a } else { print("currency not available") return 0.00 } } func makeConnection(date:String){ currencyRates.removeAll() let url = URL(string: "https://openexchangerates.org/api/historical/\(date).json?app_id=xyz") let task = URLSession.shared.dataTask(with: url!) { […]

隐藏状态栏不工作Swift 3,Xcode 8.0

将目标/常规/部署信息设置为隐藏状态栏。 在故事板中的VC中为状态栏设置无。 所有VC添加了以下代码。 override var prefersStatusBarHidden: Bool { return true } 简单地隐藏状态栏,但立即重新出现。

Swift 3 iOS – 与AVAudioPlayer同步暂停

我正在使用AVAudioPlayer在播放器风格的界面(播放/暂停/停止)中播放一组同步的MP3文件。 我知道我可以通过使用play(atTime :)同步玩他们,但我的问题是,我如何同步暂停他们? 目前,暂停他们,我正在使用: for (_, audioTrackPlayer) in audioTrackPlayers.enumerated() { audioTrackPlayer.pause() } 但当然,他们都是一个接一个的停下来。 没有等效的暂停(atTime :)function。 那么如何实现精确的同步暂停呢? 编辑 – 额外信息 在马特询问有多明显之后,我得到了一些数据。 暂停5个曲目需要几乎半秒的时间。 为了说明这一点,我在暂停循环之后添加了一个单独的循环,以在每个轨道上报告currentTime,并在暂停之前添加了几个循环 – 供参考,并显示它们同步开始。 Loop benchmark, 0: 3.2118820861678 Loop benchmark, 0: 3.21580498866213 Loop benchmark, 0: 3.21888888888889 Loop benchmark, 0: 3.22126984126984 Loop benchmark, 0: 3.22328798185941 Before pause, 0: 3.22560090702948 Before pause, 1: 3.22750566893424 Before pause, 2: […]

Swift 3 Button文本自动resize

所以我有button,基于设备自动resize,我想知道如何使button文本调整自己像一个UILable与最小的大小或规模。

mailcore2:将自定义标题添加到IMAP邮件不起作用(新写入到IMAP服务器)

我有以下问题mailcore2-ios / ios 10 / Xcode 8.1 / Swift 3: 我试图从IMAP服务器(与fetchMessageOperation),添加一个自定义标题(如“X-MyMailHeader:testing”),然后做一个appendMessageOperation新的消息再次写入到IMAP服务器(我知道,我不能更改现有的消息,所以我想写一个新的,然后删除旧的消息)。 我使用下面的代码(Swift 3): let fetchOp = imapSession.fetchMessageOperation(withFolder: withFolder, uid: uid) fetchOp?.start { (err, msgData) -> Void in log.debug("error from server \(err)") let messageParser: MCOMessageParser = MCOMessageParser(data: msgData) messageParser.header.setExtraHeaderValue("Test", forName: "X-MyMailHeader") log.debug("messageParser.header after \(messageParser.header)") log.debug("msgData after: \(messageParser.data())") let appendOp = self.imapSession.appendMessageOperation(withFolder: withFolder, messageData: messageParser.data(), flags: MCOMessageFlag(rawValue: […]

在Swift中复制Sqlite数据库不能正常工作

我正在使用以下代码的目标C复制SQLite数据库,它工作正常。 但是当我把这个代码转换成swift的时候,它在Booltypes上显示错误。 这是客观的C代码 – (void) copyDatabaseIfNeeded { //Using NSFileManager we can perform many file system operations. NSFileManager *fileManager = [NSFileManager defaultManager]; NSError *error; NSString *dbPath = [self getDBPath]; BOOL success = [fileManager fileExistsAtPath:dbPath]; if(!success) { NSString *defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"database.sqlite"]; success = [fileManager copyItemAtPath:defaultDBPath toPath:dbPath error:&error]; if (!success) NSAssert1(0, @"Failed to create writable […]

当我试图从相机胶卷上打印时,我的裁剪屏幕截图怎么变得没有了解? Swift 3,Xcode 8,IOS

Swift 3,Xcode 8,IOS: 我终于发现了如何裁剪截图(以避免截图中的导航栏),并将其保存到我的相机卷。 它工作正常,导航栏从相机卷中看到的照片中裁剪出来 – 直到我尝试编辑,打印,共享等。然后,导航栏返回到图像中,屏幕截图变为不露面。 任何想法如何永久裁剪我的截图? 这是我迄今在我的项目中所拥有的: @IBAction func buttonAction(_ sender: UIButton) { var heightOfButton: CGFloat = -88 var size = UIScreen.main.bounds.size size.height -= heightOfButton UIGraphicsBeginImageContextWithOptions(size,false,0); self.view.drawHierarchy(in: view.bounds, afterScreenUpdates: true) var image:UIImage = UIGraphicsGetImageFromCurrentImageContext()!; UIGraphicsEndImageContext(); UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)

parsing错误:错误域= NSCocoaErrorDomain代码= 3840“没有值。”UserInfo = {NSDebugDescription =没有值。}响应string:可选(“”)

我在Swift 3.0中的TableViewCell上有这些问题 我已经设置了var numb = "P100" 。 这个值需要发布到PHP来产生JSON输出。 这是我的Swift文件。 import UIKit class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var tableview: UITableView! var movementstatus: [MovementStatus]? = [] var detailsVC : MovementDetailsVC? var numb = "P100" override func viewDidLoad() { super.viewDidLoad() getData() } func getData() { var request = URLRequest(url: URL(string: "http://localhost/get.json")!) request.httpMethod = "POST" let […]

强制用户在iOS中以编程方式更新应用程序

在我的iOS应用程序中,我启用了强制应用程序更新function 就是这样。 如果有一个关键的错误修复。 在服务器中,我们正在设置新版本。 在启animation面中,我正在检查当前的应用程序版本,如果它低于服务版本,则显示一条消息来更新应用程序。 我已经把2个button“现在更新”,“稍后更新” 我有2个问题 如果我现在点击。 应用程序应该用buttonUPDATE在appstore中打开我的应用程序。 目前我使用链接“ http://appstore.com/mycompanynamepvtltd ”这将打开我公司的应用程序列表,但它有button打开,而不是更新,即使有一个新的更新为我的应用程序。 什么是更新页面的url? 如果他点击button“稍后更新”可以以编程方式closures应用程序吗? 这是否会导致在appstore中拒绝我的应用程序? 请帮我解决这两个问题

要求Facebook的朋友返回空

我有两个Facebook帐户(朋友),我login并授权我的应用程序在两个。 但是,当我试图请求任何一个朋友,我得到一个空的列表。 这可能与我的应用程序仍在开发中的事实有关吗? AnyHashable(“user_friends”),AnyHashable(“contact_email”),AnyHashable(“email”),AnyHashable(“public_profile”),AnyHashable(“user_birthday”)] 我的代码: FBSDKGraphRequest(graphPath: "/me/friends", parameters: nil).start(completionHandler: { (connection, user, requestError) -> Void in let userData = user as! NSDictionary let friends = userData["data"] as? String if requestError != nil { print(requestError) return } print(friends) // prints nil }) 即时通讯使用Swift 3