Tag: 迅速

uicollectionview删除顶部填充

我有一个UICollectionView是整个视图,但它住在“视图”(它不是UICollectionViewController)。 向这个集合视图中添加一个单元格将在故事板中按以下顺序显示它: 这是它在模拟器中的外观: 我不明白如何摆脱这个观点。 所有的插图在Storyboard Size Inspector中都为零,用于收集视图。 可以肯定的是,我也有以下代码: override func viewWillLayoutSubviews() { let layout = self.collectionViewProducts.collectionViewLayout as! UICollectionViewFlowLayout let containerWidth = UIScreen.main.bounds.size.width – 40.0 let itemWidth = (containerWidth / 3.0) let itemHeight = (itemWidth / 0.75) + 30 layout.sectionInset = UIEdgeInsets(top: 0.0, left: 0.0, bottom: 0.0, right: 0.0) layout.itemSize = CGSize(width: itemWidth, height: itemHeight) } […]

如何制作相同的iOS Swift应用程序,只需要在代码和资源方面有一些区别,可扩展的和干净的模式

我有这个需求。 我开发了一个应用程序,我想复制它。 我可以复制和粘贴项目,但如果我这样做10次可能是一个问题。 问题是,如果我在第10个重复中发现一个错误,我必须检查所有其他项目,我不想这样做。 有一个干净的方法来解决这个问题? 换句话说,我只有一个大代码。 我必须部署的应用程序之间的差异是: 启动器图标 HTTP请求的域 包裹名字 初始屏幕 应用名称 应用程序内的一些整数 一些资产 在Android中,我用gradle来做这个,特别是用这个风格。 我怎样才能做到这一点与斯威夫特?

Alamofire火灾variablestypes没有下标成员

更新到Alamofire 4并更新我的代码到Swift 3后,我的所有请求都不能正常工作。 我试图利用的variables以红色突出显示,并且说“types任何”没有下标成员“ 这是我的代码: Alamofire.request("https://example.com/notifications.php?action=\(action)&UUID=\(UniversalUUID)&token=\(token)").responseJSON{ (response) -> Void in if let JSON = response.result.value{ let message = JSON["message"] as! String print(message) }

MYSQL和Swift – 上传图像和FILE || 使用Alamofire会更好吗?

我正在尝试上传图片和文本文件(将其上传为数据)。 到目前为止,我可以正确地单独上载图像,也可以单独成功上传文本文件数据作为.txt文件。 现在我需要将图像和.txt文件一起上传… 我不知道如何设置在我的IOS应用程序的参数为这…. 到目前为止,这是我如何上传.txt文件(基本上是我上传图像的方式,但我更改“文件名”和“mimetype”) func createBodyWithParameters(parameters: [String : Any]?, filePathKey: String?,filePathKey1: String?, imageDataKey: NSData,imageDataKey1: NSData, boundary: String) -> NSData { let body = NSMutableData(); if parameters != nil { for (key, value) in parameters! { body.appendString("–\(boundary)\r\n") body.appendString("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n") body.appendString("\(value)\r\n") } } let filename = "post-\(uuid).txt" let mimetype = "image/txt" body.appendString("–\(boundary)\r\n") body.appendString("Content-Disposition: form-data; name=\"\(filePathKey!)\"; […]

FirebaseStorage:如何删除目录

当我试图删除一个目录时,FirebaseStorage总是返回错误400 ,例如下面的东西总是返回错误400 。 let storageRef = FIRStorage.storage().reference().child("path/to/directory") storageRef.deleteWithCompletion { (error) in print("error: \(error)") // always prints error code 400 } 但是,删除文件可以正常工作,例如,不会返回错误: let storageRef = FIRStorage.storage().reference().child("path/to/file.jpg") storageRef.deleteWithCompletion { (error) in print("error: \(error)") // works fine, error is nil } 我在这里做错了什么? 我不认为它不被FirebaseStorage支持,因为从一个目录逐个删除文件将是非常跛脚的(特别是如果所述目录有这些的100个或1000个)。

致命错误:意外地发现零,而解包一个可选值

我想运行这个代码,但我一直得到这个错误: 致命错误:意外地发现零,而解包一个可选值 我不明白这是什么意思,为什么我得到它。 任何提示? import UIKit class ViewController: UIViewController { var lastNumber: String = "" @IBOutlet var answerField: UILabel @IBOutlet var operaterLabel: UILabel override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be […]

通过AlamofireImage下载UIImage?

我有一个URL,并希望通过返回函数下载图像,但是我不能得到它配合正确,这是我的function: func getTabImage(url: URL) -> UIImage { Alamofire.request(url) .responseImage { response in if let image = response.result.value { return image } else { print("Failed to get image") } } } 我传递的URL,并希望从alamofire响应返回的UIImage。 但是我得到了 void函数中意外的非void返回值 为回报声明。 我怎样才能做到这一点?

Swift 3:用float增量replacec样式for循环

我在我的应用程序中有这样一个循环: for var hue = minHue; hue <= maxHue; hue += hueIncrement { let randomizedHue = UIColor.clipHue( Random.uniform(ClosedInterval(hue – dispersion, hue + dispersion)) ) colors.append(colorWithHue(randomizedHue)) } hueIncrement是浮动的 ,所以我不能使用范围运算符像这样: ..< 。 在Swift 3中实现这种循环的最好和最简单的方法是什么?

Swift:无法将值分配给协议属性?

A类提供一个string值。 B类有两个Atypes的成员,并提供一个计算属性“v”来select其中的一个。 class A { var value: String init(value: String) { self.value = value } } class B { var v1: A? var v2: A = A(value: "2") private var v: A { return v1 ?? v2 } var value: String { get { return v.value } set { v.value = newValue } } } […]

如何得到函数抛出的错误列表?

使用Swift现在一些函数被标记为throws ,这迫使开发人员在do – try catch块中调用函数。 但是,开发人员如何知道该函数引发的不同exception列表呢? 作为参考,这里是一行Java代码: static void employeeAge(int age) throws MyExceptionA,MyExceptionB 这里很明显,exception是2 MyExceptionA和MyExceptionB ,开发人员可以决定采取不同的行为取决于错误。 我们可以在Swift上做到这一点吗?