一种优雅的方式来忽略任何方法抛出的错误

我正在用NSFileManager删除临时文件,如下所示: let fm = NSFileManager() fm.removeItemAtURL(fileURL) // error: "Call can throw but it is not marked with 'try'" 我真的不在乎这个文件是否在那里,而且如果这个文件已经被删除了,那就这样吧。 如果不使用do/catch ,Swift会忽略任何抛出的错误,这将是一个do/catch吗?

查找应用程序已经设置的本地通知列表

我的应用程序允许用户在将来设置一些提醒。 当应用程序启动时,我想知道什么提醒(通知)已经设置。 我可以读回已设定的通知,还是需要将其存储在我的应用程序中(例如Core Data或Plist)?

以编程方式切换Swift中的选项卡

我需要编写一些代码,以便在iOS应用程序启动时将视图切换到另一个选项卡(例如,默认显示第二个选项卡,而不是第一个选项卡)。 我是新来的Swift,并已经制定了以下内容: 代码可能应该在第一个选项卡的ViewController的覆盖func viewDidLoad()函数中进行。 下面的代码显示了第二个ViewController,但不是底部的标签栏(vcOptions是第二个ViewController标签项: let vc : AnyObject! = self.storyboard.instantiateViewControllerWithIdentifier("vcOptions") self.showViewController(vc as UIViewController, sender: vc) 我想答案可能在于使用UITabbarController.selectedIndex = 1,但不太清楚如何实现这个。

方法load()定义了Objective-C类的方法'load',这是Swift 1.2不允许的

我正在使用Parse,并且正在创build一个符合协议PFSubclassing的PFObject子类! 它工作得很好,但现在我正在使用Swift 1.2,它给了我这个错误: 1. override class func load() { 2. self.registerSubclass() 3. } 在第一行:方法'load()'定义了Objective-C类的方法'load',这是Swift 1.2不允许的 任何人都有这个问题呢? 我该如何解决?

在NSPredicate中结合“AND”和“OR”条件

再次需要更多的帮助,构build我的NSPredicates 🙁 Category { name:string subs<–>>SubCategory } SubCategory { name:string numbervalue:NSNumber } 我想知道如何用AND和OR创build一个谓词。 例如,我想返回每个类别的名称==“category_name”,也有一个数值为“valueA” 或 “valueB”的子类别。 我已经尝试了所有可能的谓词构造方法的组合,但是我只是无法让它工作。 这是迄今为止我最好的尝试。 NSPredicate *predicate=[NSPredicate predicateWithFormat@"(name== %@) AND (ANY subs.numbervalue==%@ OR ANY subs.numbervalue==%@)", @"aname", value1, value2]; 编辑1 第二次尝试。 对“numbervalue”的过滤仍然不起作用。 NSNumber valueA=[NSNumber numberWithInt:20]; NSNumber valueA=[NSNumber numberWithInt:90]; NSArray *arr=[NSArray arrayWithObject:valueA,valueB,nil]; predicate=[NSPredicate predicateWithFormat:@"(name==%@)AND(ANY subs.numbervalue IN %@)",@"aname",arr]; 编辑2 我已经尝试通过numberValue进行过滤,并将名称全部留下。 1)使用这个结果会导致整个集合被返回,即使集合中只有一个项目具有该值。 predicate=[NSPredicate predicateWithFormat:@"(ANY subs.numbervalue IN […]

静态函数和单例类在swift中的区别

我想创build一个类,其中将在整个应用程序将使用的所有实用工具方法。 问题:1 创build一个单例类并保留所有必要的方法是很好的,或者我应该创build一个所有函数都应该是静态的类。 问题:2 两者之间的主要区别是什么? 问题:3 它将如何影响iOS的性能?

如何使用AVURLAssetstream式传输video并将caching的数据保存到磁盘

前几天我被要求检查一下从网上下载video有多困难。 我知道这是一件容易的事,因为前一阵子有人告诉我。 所以,我检查,这是超级简单。 问题是,我想保存到磁盘的video,不要强迫用户下载一次又一次。 问题是访问缓冲区并将其存储到磁盘。 在Stackoverflow许多答案说,这也是不可能的。 特别与video。 我的原始代码播放video: import AVFoundation …. //MARK: – Accessors lazy var player: AVPlayer = { var player: AVPlayer = AVPlayer(playerItem: self.playerItem) player.actionAtItemEnd = AVPlayerActionAtItemEnd.None return player }() lazy var playerItem: AVPlayerItem = { var playerItem: AVPlayerItem = AVPlayerItem(asset: self.asset) return playerItem }() lazy var asset: AVURLAsset = { var asset: […]

UIControlEventTouchDragExit在距离UIButton 100像素时触发

目前, UIControlEventTouchDragExit只会在我从button拖动100个像素的时候触发。 我想定制这种行为,并把这个范围在25像素左右,但我相对较新的编程,并从来没有需要重写/定制这样的内置方法。 我已经读过一些其他post,我需要UIButton (或者甚至UIControl ?),并覆盖-(BOOL) beginTrackingWithTouch: (UITouch *) touch withEvent: (UIEvent *) event和相关的方法,但我真的不知道从哪里开始这样做。 任何人都可以提供一些build议,我可以做到这一点? 非常感激! ^ _ ^

iPad 2检测

由于我没有iPad 2,因此在调用[[UIDevice currentDevice]模型]时需要知道它返回的内容。 我认为它只是返回“iPad”,但似乎我错了。 有人能让我知道吗? 谢谢

在UITableViewCell完全可见时播放video

我有一个包含videoURL的数组,我想在UITableviewcell完全可见时播放这些video。 我已经试过了 – (void)scrollViewDidScroll:(UIScrollView *)aScrollView { NSArray* cells = homeTabl.visibleCells; for (HomeCell* cell in cells) { if (cell.frame.origin.y > offset.y && cell.frame.origin.y + cell.frame.size.height < offset.y + bounds.size.height) { NSIndexPath *path = [homeTabl indexPathForCell:cell] ; index = path.row; fullvisible = YES; [homeTabl reloadData]; } else { fullvisible = NO; } } } – (UITableViewCell *)tableView:(UITableView […]