如何判断循环中的块是否都已经完成执行?

我有一个循环设置,下载一系列的图像,我将稍后使用animation使用UIImageView的animationImages属性。 我想知道什么时候我的循环里面的所有块已经完成执行,所以我可以开始animation,并想知道如何能够告诉他们什么时候完成? 谢谢! for (PFObject *pictureObject in objects){ PFFile *imageFile = [pictureObject objectForKey:@"image"]; NSURL *imageFileURL = [[NSURL alloc] initWithString:imageFile.url]; NSURLRequest *imageRequest = [NSURLRequest requestWithURL:imageFileURL]; [tokenImageView setImageWithURLRequest:imageRequest placeholderImage:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) { [self.downloadedUIImages addObject:image]; //This is a mutableArray that will later be set to an UIImageView's animnationImages } failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError […]

从UICollectionView中删除单元格

我在我的iPhone应用程序中使用CollectionView。 每个收集单元都包含一个删除button。 通过点击button,单元格应该被删除。 删除后,该空间将填充下面的单元格(我不希望重新加载CollectionView,并从顶部再次开始) 如何使用自动布局从UICollectionview中删除特定的单元格?

如何使Cmake在最终编译阶段而不是检测时使用特定的编译器和标志?

我正在尝试从Mac OS X到iOS进行交叉编译。 使用clang将源代码交叉编译为iOS目标很容易。 我们只需要3个参数就可以工作。 clang -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -miphoneos-version-min=4.3 但问题是我必须build立一个与Cmake打包的库(Bullet Physics)。 据我所知,Cmake还没有iOS支持。 所以,我做了一个工具链文件。 SET (CMAKE_SYSTEM_NAME "Generic") SET (CMAKE_SYSTEM_VERSION "4.3") SET (CMAKE_SYSTEM_PROCESSOR "arm") SET (CMAKE_CROSSCOMPILING TRUE) SET (SDKVER "4.3") SET (DEVROOT "/Developer/Platforms/iPhoneOS.platform/Developer") SET (SDKROOT "/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk") SET (CMAKE_OSX_SYSROOT "${SDKROOT}") SET (CMAKE_OSX_ARCHITECTURES "armv6" "armv7") SET (CMAKE_C_COMPILER "${DEVROOT}/usr/bin/clang") SET (CMAKE_CXX_COMPILER "${DEVROOT}/usr/bin/clang++") SET (CMAKE_C_FLAGS "-arch armv6 -arch armv7 […]

在UITableView IOS中select行时,多选checkMark

我有一个UITableView显示选中行时的复选标记。 问题是,当我在didSelectRowAtIndexPathselect一行并在所选行上添加复选标记时,它会添加一个复选标记。 这是我的代码 任何帮助将非常感激。 – (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; // Configure the cell… cell.textLabel.text=[[Model.category objectAtIndex:indexPath.row] categoryName]; cell.imageView.image=[[Model.category objectAtIndex:indexPath.row]categoryImage]; //cell.detailTextLabel.text =@"Breve Descripción de la categoria"; return cell; } – (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ if ([self.tableView cellForRowAtIndexPath:indexPath].accessoryType == UITableViewCellAccessoryCheckmark) { [self.tableView cellForRowAtIndexPath:indexPath].accessoryType =UITableViewCellAccessoryNone; [self.cellSelected removeObject:indexPath]; }else { [tableView cellForRowAtIndexPath:indexPath].accessoryType=UITableViewCellAccessoryCheckmark; […]

iOS中的annotationView中的自定义图钉图像

我试图从Swift 1.2更改为Swift 2.0,而且我正在进行更改。 目前我正在MapViewController中进行更改,并没有任何错误或警告,但我的引脚(annotationView)自定义图像没有分配到引脚,它显示默认的(红点)。 这里是我的代码,我希望你能帮助我一些提示,因为我觉得一切都很好,但它仍然不工作: func parseJsonData(data: NSData) -> [Farmacia] { let farmacias = [Farmacia]() do { let jsonResult = try NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers) as? NSDictionary // Parse JSON data let jsonProductos = jsonResult?["farmacias"] as! [AnyObject] for jsonProducto in jsonProductos { let farmacia = Farmacia() farmacia.id = jsonProducto["id"] as! String farmacia.nombre = jsonProducto["nombre"] as! String […]

如何将Linphone集成到现有项目(IOS中的SIP)

我正在寻找集成Linphone库在我的ios项目。 而我没有find教程来帮助我。 这个项目提供了很less的文档,但似乎运作良好。 有关信息,这里是提供其开放源代码的项目页面: Linphone开源代码 我已经通过遵循所有步骤和这个工作很好地编译了源代码,但是下一步是将我的个人iPhone项目中的一部分代码集成到SIP层中,用于audio和video的pipe理。 在我使用的情况下,它不会是用户,但应用程序,如果需要将自动调用(我的项目是家庭自动化系统)。 Linphone应用程序似乎是非常复杂的集成到其他projets,因为有很多库包括和大量的configuration… 我还没有在互联网上find任何例子,我承认,我不知道从哪里开始,没有帮助,没有办法进行整合。 所以,如果你有任何资源(教程)可以帮助我,或者如果你有经验整合这个图书馆,这给了我一个非常大的帮助。

在iPhone应用程序中捕获60fps

我正在开发一个项目,在那里我们将使用iPhone作为捕捉场景的摄像头。 录制时,我们需要logging@ 60fps而不是30fps(原生支持)。 所以我正在做一个应用程序来做到这一点,因为iPhone 4S硬件支持720p @ 60fps(如果你越狱你的手机,你可以做到这一点)。 有人知道如何在iOS上的Objective-C中做到这一点? 今天我看到一个应用程序(slopro),可以在非越狱手机上logging60fps。 任何意见或提示,非常感谢。

将SecKeyRef设备生成的公钥/私钥对保存在磁盘上

我在设备上使用SecKeyGeneratePair()在设备上生成一个RSA对称密钥对。 我有每个键的SecKeyRef结构指针。 那么,如何将SecKeyRef保存到磁盘? 甚至传输它(我也想象也有正确的编码问题)? 苹果的“证书,密钥和信任服务”指南注释 您可以将您的公钥发送给任何可以用来encryption数据的人。 我想特别保存私钥。 所以我可以在部署的设备上使用它来解密用公钥encryption的数据。 PS我不介意每个键的结果数据是DER编码的ASN.1还是base-64; 我只需要弄清楚如何从SecKeyRef取出密钥。 我也很清楚OS X的SecKeychainItemExport()不存在。

从Apple服务器获取date和时间

我正在开发一个应用程序,只能在一天中的某个时间使用。 我无法获得本地设备的时间,因为用户可以轻松地更改设备时间,从而允许在一天中的任何时间访问应用程序。 有没有办法从苹果服务器获取当前date和时间(或者如果没有),还有其他方法吗?

用GCD运行重复NSTimer?

我想知道为什么当你在GCD块中创build一个重复定时器时,它不工作? 这工作正常: -(void)viewDidLoad{ [super viewDidLoad]; [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(runTimer) userInfo:nil repeats:YES]; } -(void)runTimer{ NSLog(@"hi"); } 但是这个工作: dispatch_queue_t myQueue; -(void)viewDidLoad{ [super viewDidLoad]; myQueue = dispatch_queue_create("someDescription", NULL); dispatch_async(myQueue, ^{ [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(runTimer) userInfo:nil repeats:YES]; }); } -(void)runTimer{ NSLog(@"hi"); }