Tag: 快速

安全的内存对于Swift对象

我正在写一个快速的应用程序,需要处理内存中的私钥。 由于这些对象的敏感性,当对象被释放时,这些键需要被清除(也被写为全零),并且内存不能被分页到磁盘(通常使用mlock()完成)。 在Objective-C中,您可以提供一个自定义的CFAllocator对象,它允许您使用自己的函数来分配/释放/重新分配对象使用的内存。 所以一个解决scheme是在objective-c中实现一个“SecureData”对象,该对象使用自定义的CFAllocator(也在objective-c中)在内部创build一个NSMutableData对象。 然而,有没有办法让我提供我自己的自定义内存分配函数的纯Swift对象(例如,一个结构或[UInt8])? 还是有更好的,“适当”的方式来实现这样的快速安全的内存?

以编程方式使用Swift自定义UITableViewCell

嘿,我想创build一个自定义的UITableViewCell ,但我看不到在模拟器上。 你能帮我吗。 我只能看到标签如果我var labUserName = UILabel(frame: CGRectMake(0.0, 0.0, 130, 30)); 但它与单元格重叠。 我不明白,自动布局应该知道每个单元格的首选大小/最小大小? 谢谢 import Foundation import UIKit class TableCellMessages: UITableViewCell { var imgUser = UIImageView(); var labUserName = UILabel(); var labMessage = UILabel(); var labTime = UILabel(); override init(style: UITableViewCellStyle, reuseIdentifier: String) { super.init(style: style, reuseIdentifier: reuseIdentifier) imgUser.layer.cornerRadius = imgUser.frame.size.width / 2; imgUser.clipsToBounds = […]

滚动查看和键盘Swift

我在这里是新的,即时从iOS的Swift开始。 我开始创build一个简单的应用程序,执行一些操作。 但是当键盘出现时,我遇到了一些问题,隐藏了我的一个textField。 我认为这是一个普遍的问题,我做了一些研究,但我找不到解决我的问题的任何东西。 我想使用Scroll而不是使textFieldanimation显示。 谢谢!!!!! (抱歉英文错误)

Swift – 协议扩展 – 属性默认值

假设我有以下协议: protocol Identifiable { var id: Int {get} var name: String {get} } 而且我有以下结构: struct A: Identifiable { var id: Int var name: String } struct B: Identifiable { var id: Int var name: String } 正如你所看到的,我必须“符合”在结构A和结构B的可识别协议。但想象一下,如果我有更多的结构需要符合这个协议…我不想'复制/粘贴一致性(var id:Int,var name:String) 所以我创build了一个协议扩展 : extension Identifiable { var id: Int { return 0 } var name: String { […]

在AudioEngine中使用音效

背景 – 在苹果最近的WWDC发布的video列表中,我看到了一个名为“AVAudioEngine in Practice”的video,将音效应用于audio。 https://developer.apple.com/videos/wwdc/2014/ 之后,我用下面的代码成功地改变了audio的音调: //Audio Engine is initialized in viewDidLoad() audioEngine = AVAudioEngine() //The following Action is called on clicking a button @IBAction func chipmunkPlayback(sender: UIButton) { var pitchPlayer = AVAudioPlayerNode() var timePitch = AVAudioUnitTimePitch() timePitch.pitch = 1000 audioEngine.attachNode(pitchPlayer) audioEngine.attachNode(timePitch) audioEngine.connect(pitchPlayer, to: timePitch, format: myAudioFile.processingFormat) audioEngine.connect(timePitch, to: audioEngine.outputNode, format: myAudioFile.processingFormat) pitchPlayer.scheduleFile(myAudioFile, atTime: […]

在UIViewController中的多个collectionView – IOS的​​快速

我试了很多天才意识到这一点: 我想在我的UIViewController中添加两个不同的CollectionView。 例如,我想要在这些collectionView中的图像每个CollectionView使用自己的图像。 这可能吗? 如果有人能帮我一把,我会很开心的。 🙂

Alamofire:如何处理全球的错误

我的问题与这个非常相似,但对于Alamofire: AFNetworking:处理全局错误并重复请求 如何能够捕捉到全球性的错误(通常是401),并在其他请求之前处理(如果不pipe理,最终会失败)? 我正在考虑链接一个自定义的响应处理程序,但这是愚蠢的做到每个应用程序的请求。 也许inheritance,但我应该inheritance哪个类来处理?

从Firebase数据库中获取随机孩子

我正在尝试使用Firebase 3和Swift 3来制作一个允许用户创build“testing”的应用程序,目的是从数据库中看到一个完全随机的testing。 我的桌子: Users: – uid – email tests – id – title – user_uid 我如何从“testing”中随机select任何孩子,这样我就可以将它们展示给用户? 我应该改变我的结构吗? 通过这个我的意思是让我说我​​有这个: tests: – 12391239123 – title: "My first test" – user_uid: 12312345 – 59696995883 – title: "Second test" – user_uid 12352355 我想select这两个对象中的一个,所以我可以将它们显示给用户。 它必须是完全随机的。 也有可能查询数据库,所以我得到所有的孩子,其中user_uid等于我提供的用户uid? 如果是这样,怎么样?

Swift – 如何在Firebase上按降序创buildsorting查询?

我正在使用Firebase和Alamofire,AlamofireImage将我的imageURL数据caching在内存上,并上传ImageShack。 我坚持创build降序查询试图做和search,但我找不到可能的描述。 这是我在Firebase上的testingref_post 。 childByAutoId() – userUid – imageUrl – 时间戳(我用这个创build的) *使用NSDate()。formattedISO8601是最好的方式或者你能build议我基本上处理它? 我如何在Firbase IOS / Swift中进行降序查询。 这是我的viewDidLoad : let query = DataService.ds.REF_POSTS.queryOrderedByChild("timestamp") query.observeEventType(.Value, withBlock: { snapshot in if let snapshots = snapshot.children.allObjects as? [FDataSnapshot] { self.posts = [] for snap in snapshots { if let postDict = snap.value as? Dictionary<String, AnyObject> { print(postDict) let post […]

如何确定什么时候所有的图像已经从Swift中的一组下载?

我正在使用PinRemoteImage库来下载填充collectionView图像。 我想基于图像高度dynamic更新单元格高度,所以我需要知道何时下载了所有图像,以便我可以重新加载/无效我的collectionViewLayout 。 什么是最好的方式来确定什么时候没有更多的图像下载? override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! PinCollectionViewCell cell.pinImage?.pin_updateWithProgress = true cell.pinImage?.image = nil if let pinImageURL = self.pins[indexPath.row].largestImage().url { cell.pinImage?.pin_setImageFromURL(pinImageURL, completion: ({ (result : PINRemoteImageManagerResult) -> Void in if let image = result.image { self.imageArray.append(image) }