让我头疼的简单事情 - 如何初始化符合可映射协议的对象,还没有任何JSON.
我想做的是简单地在代码中初始化空的User对象,如下所示:
let user = User()
Run Code Online (Sandbox Code Playgroud)
但是这给了我错误:"在调用中缺少参数#1的参数"
我能够使用swift 1.2在版本0.14中完成它,但现在它无法正常工作.你们现在知道如何在swift 2和新的Object Mapper中做到这一点吗?(我知道如何使用json等初始化它,我只是想为其他目的初始化该对象,我无法弄清楚如何)
class User: Mappable {
var username: String?
var age: Int?
var weight: Double!
var array: [AnyObject]?
var dictionary: [String : AnyObject] = [:]
var bestFriend: User? // Nested User object
var friends: [User]? // Array of Users
var birthday: NSDate?
required init?(_ map: Map) {
}
// Mappable
func mapping(map: Map) {
username <- map["username"]
age <- map["age"]
weight <- map["weight"]
array <- map["arr"]
dictionary <- map["dict"] …Run Code Online (Sandbox Code Playgroud) 首先,我想提一提的是,我已经阅读了cocoapods指南https://guides.cocoapods.org/using/pod-install-vs-update.html
似乎还不清楚我们为什么要在每个人都只使用pod install命令并且我们在podfile中严格指定所有版本的设置中提交Podfile.lock。然后,.lock文件似乎是多余的。
假设我们有一个使用ReactiveSwift的项目。ReactiveSwift在其podspec中对Result容器有依赖性,如下所示:
s.dependency 'Result', '~> 3.2'
Run Code Online (Sandbox Code Playgroud)
我的假设是,我真的不应该在乎ReactiveSwift所依赖的内容,因为我只是要对严格指定的ReactiveSwift版本进行pod安装。
对于我自己开发的Pod,我可以影响他们的podfile和podspec以严格指定我要使用的一个版本。
因此,没有podfile.lock的项目中的简化流程为:
如果需要在依赖版本中进行更改,则开发一个功能-只需在podfile中直接指定它,而无需提交Podfile.lock
将功能合并到master分支,然后CI会使用新的podfile运行pod install命令
现在,配置项已使用了所有正确版本的Pod,并且可以正确构建我的应用
在这种情况下是否需要Podfile.lock?
我有一大堆Fortran代码,我需要在iOS设备上运行(在iOS应用程序中,我会像Objective-C - > C - > Fortran一样).
我能够编译Fortran代码的arm64使用dragonegg.但是在链接阶段我从gfortran库中遗漏了很多符号.
我试图gfortran用Xcode 编译文件,但这很成问题.我宁愿至少使用configure和make以某种方式让我更接近结果,但似乎--target=arm-apple-darwin并没有真正支持.
知道如何创建libgfortran它是为了arm64什么?也许有人有一定预建libgfortran的arm64?
我想创建自定义PFObject类,但它给了我一个非常令人困惑的错误"属性self.photo未在super.init调用时初始化"
这是我的自定义类的代码:
import Foundation
import Parse
class Wish: PFObject, PFSubclassing {
var id: String?
var name: String?
var descriptionWish: String?
var photo: UIImage
var photoThumbnail: UIImage
var amount: Double?
var amountDonated: Int?
static func parseClassName() -> String {
return "Wish"
}
override init() {
super.init()
}
convenience init(id: String?, name: String?, descriptionWish: String?, photo: UIImage, photoThumbnail: UIImage, amount: Double?, amountDonated: Int?) {
self.init()
self.id = id
self.name = name
self.descriptionWish = descriptionWish
self.photo = photo
self.photoThumbnail = photoThumbnail
self.amount = …Run Code Online (Sandbox Code Playgroud)