我正在尝试在iOS 8中针对SWIFT中的Objective-C 实现答案
//source: http://stackanswers.com/questions/24227578/ios-8-uiimage-metadata
func metaDataFromAssetLibrary(info: NSDictionary) {
var assetURL = info.objectForKey(UIImagePickerControllerReferenceURL) as NSURL
var assetLibrary = ALAssetsLibrary()
assetLibrary.assetForURL(assetURL as NSURL, resultBlock: {
(asset: ALAsset!) in
var metadata: NSDictionary = asset.defaultRepresentation().metadata() as NSDictionary
NSLog ("imageMetaData from AssetLibrary %@",metadata);
}, failureBlock: {
(error: NSError!) in
NSLog("Error!")
})
}
我打电话给
func imagePickerController(picker: UIImagePickerController!, didFinishPickingMediaWithInfo info: NSDictionary!){
// https://stackoverflow.com/questions/3088874/didfinishpickingmediawithinfo-return-nil-photo
picker.dismissViewControllerAnimated(true, completion: nil)
let image = info.objectForKey("UIImagePickerControllerOriginalImage") as UIImage
PHPhotoLibrary.sharedPhotoLibrary().performChanges({
let createAssetRequest = PHAssetChangeRequest.creationRequestForAssetFromImage(image)
let assetPlaceholder = createAssetRequest.placeholderForCreatedAsset
let albumChangeRequest = PHAssetCollectionChangeRequest(forAssetCollection: self.assetCollection, assets: self.photosAsset)
albumChangeRequest.addAssets([assetPlaceholder])
}, completionHandler: {(success, error)in
NSLog("Adding Image to Library -> %@", (success ? "Sucess":"Error!"))
picker.dismissViewControllerAnimated(true, completion: nil)
})
metaDataFromAssetLibrary(info)
}
这将导致“致命错误:在展开可选值时意外发现nil”
试试这个代码:
let metadata = info[UIImagePickerControllerMediaMetadata] as? NSDictionary
let image = info[UIImagePickerControllerOriginalImage] as? UIImage
问题内容: 我想知道是否有一种更快,更省时的方法来遍历元组列表,找到合适的匹配项。我要做的是: 根据列表中项目的数量,此代码可能需要花费一些时间才能执行。我敢肯定有更好的方法可以做到这一点。 问题答案: 假设更多的内存使用不是问题,并且如果元组的第一项是可哈希的,则可以从元组列表中创建字典,然后查找值就像从中查找键一样简单。就像是: 编辑 :要创建一个反向映射,请使用类似:
问题内容: 我在解析中进行了查询,并获取了GeoPoint坐标数组。这是在封闭内部完成的。我只能访问该闭包内的数组值。我需要能够使用这些值,以便它们可以用作地图上的注释,但我无法使用它们。有人可以告诉我如何从闭包中获取数组值。 码: 问题答案: 在闭包表达式外部而不是内部声明为var。当将其分配给闭包内时,该更改将反映在闭包外的变量中。这称为“捕获” 。捕获外部上下文是使闭包不仅仅是函数的原因。
嗨,我一直在到处寻找一个非常简单的解释,如何通过xPath找到一个元素。 我想要的只是一种简单的方法来寻找一个元素,但是我想要找到的所有帮助都需要一个。这对我不管用。以下是我想做的: 加载URL 这是我的代码: 当我执行 我得到未定义时,我做 有没有更简单的方法来获取元素?也许是。。。。
问题内容: 我真的是Swift的新手,我刚刚读到类是通过引用传递的,并且复制了数组/字符串等。 通过引用进行传递是否与在Objective-C或Java中通过“ a”引用进行传递的方式相同,还是通过引用进行正确传递? 问题答案: Swift中的事物类型 规则是: 类实例是 引用类型 (即, 您 对类实例的引用实际上是一个 指针 ) 函数是参考类型 其他一切都是 价值类型 ; “其他所有内容”仅表示
问题内容: 我试图获取从Swift中的Library导入的图像的URL,以将其发送到Apple Watch,但出现两个错误。 这是我的代码: 我在 imageName和 localPath上遇到错误,因为它说: “ lastPathComponent”不可用:在NSURL上使用lastPathComponent。’stringByAppendingPathComponent’不可用:在NSURL上
我对swift非常陌生,所以我的代码中可能会有很多错误,但我试图实现的是向带有paramters的本地主机服务器发送请求。更重要的是,我试图实现它,因为我的函数接受两个参数。我不确定如何将这两者结合到实际的URLRequest中?以下是我到目前为止所尝试的