iOS:无法将文件保存到“应用程序支持”文件夹,但可以将“文档”

我可以使用自定义名称下载并保存二进制文件到“文档”文件夹中。 如果我只是将URL更改为“应用程序支持”文件夹,而不是“文档”文件夹,则无法写入该URL,表示该URL不存在。 以下是url构build代码: – ( NSURL * ) getSaveFolder { NSURL * appSupportDir = nil; NSURL * appDirectory = nil; NSArray * possibleURLs = [[NSFileManager defaultManager] URLsForDirectory:NSApplicationSupportDirectory inDomains:NSAllDomainsMask]; if ( [possibleURLs count] >= 1 ) { appSupportDir = [possibleURLs objectAtIndex:0]; } if ( appSupportDir != nil) { NSString * appBundleID = [[NSBundle mainBundle] bundleIdentifier]; appDirectory […]

在iOS 8的今天扩展适合宽度

当我制作任何iOS 8 Today扩展时,即使在Interface Builder中我在x = 0的左侧放置了一个标签,左边的空白区域大约为48px。 我已经看到,有些应用程序使用全宽度小部件。 我怎样才能达到类似的东西? 谢谢! 更新:解决 我把这个示例代码放在这里,因为我猜这对别人有用。 正如@ matteo-lallone所build议的,正确的做法是: -(UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMa‌​rginInsets{ return UIEdgeInsetsZero; }

使用自动布局来设置dynamicUIView以匹配容器视图

我有一个UIView在IB中有另一个UIView,我用它作为一个容器视图。 在代码中,我创build了三个不同的视图,然后根据应用程序的状态将适当的视图animation到容器的视图中。 三种不同意见中,只有一种在任何时候都是有效的。 问题是,当我在模拟器中运行不同的iPhone时,我的新的子视图不能缩放以匹配容器视图。 我正在使用自动布局。 出于testing目的,我已经设置了我的子视图,只是一个大的button,它的边缘限制在超级视图。 而容器视图也有它的边界限制到它的超视图。 我想要的是子视图匹配容器的视图。 即button拉伸容器视图的整个大小。 当在不同的iPhone上运行时,容器视图的大小以及子视图的大小应相对于不同iPhone的屏幕大小成比例地缩放。 下面是我用来初始化我的子视图的代码,并设置它相对于容器视图的约束。 UIView *containerView = self.subView; UIView *newSubview = [[mySubview alloc] init]; [newSubview setTranslatesAutoresizingMaskIntoConstraints:NO]; [self.containerView addSubview:newSubview]; [self.containerView addConstraint:[NSLayoutConstraint constraintWithItem:newSubview attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.containerView attribute:NSLayoutAttributeTop multiplier:1.0 constant:0]]; [self.containerView addConstraint:[NSLayoutConstraint constraintWithItem:newSubview attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self.containerView attribute:NSLayoutAttributeLeading multiplier:1.0 constant:0]]; [self.containerView addConstraint:[NSLayoutConstraint constraintWithItem:newSubview attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.containerView attribute:NSLayoutAttributeWidth multiplier:1.0 constant:0]]; [self.containerView addConstraint:[NSLayoutConstraint constraintWithItem:newSubview […]

“这个项目不能共享。 请select其他项目。“WhatsApp iOS共享扩展失败消息

WhatsApp团队于2016年5月23日解决了这个错误(build no。2.16.4)。 无法使用UIActivityViewController共享NSString对象到WhatsApp。 我试图分享使用下面的代码。 但是,一旦从列表中select了联系人,它将显示一个警报,显示“ This item cannot be shared. Please select a different item. 码 NSString *shareText = @"Temp text to share"; NSArray *itemsToShare = @[shareText]; UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:itemsToShare applicationActivities:nil]; 在将WhatsApp更新到版本2.16.2后,我遇到了这个问题

✔勾选UITableViewCell中的选定行

我是一个iOS开发新手。 选中时,我想添加一个复选标记到我的UITableViewCell 。 选中另一行时,应该删除复选标记。 我将如何做到这一点?

与故事板一起在景观中devise

是否可以使用Interface Builderdevise界面? 其他具有相同问题的人显然可以用任何选定视图的右上方的箭头这样做,但是我看不到这样的箭头。 一张照片会有帮助。 (注:我正在使用故事板,而不是xibs。)

每次更改文本时,如何强制UITextView滚动到顶部?

好的,我在UITextView有问题。 这是问题: 我添加一些文本到UITextView 。 用户然后双击select一些东西。 然后,我更改UITextView的文本(编程方式如上), UITextView滚动到有光标的页面的底部。 但是,这不是用户点击的地方。 它始终滚动到UITextView的底部,而不pipe用户点击的位置。 所以这里是我的问题:我如何强制UITextView滚动到顶部每次我改变文字? 我已经尝试了contentOffset和scrollRangeToVisible 。 既没有工作。 任何build议,将不胜感激。

获取ITMS-4238“冗余二进制上载”错误无论我更改构build版本或应用程序版本

我拒绝了一个二进制文件,它是1.0(1.0)。 开发者进入拒绝状态。 我去上传一个新的二进制文件,遇到这个问题,然后我看到我需要增加我的构build。 我增加了两个应用程序版本,并build立到1.1,这是一个错误。 我有一些错误的应用程序版本不匹配,理解。 然后我试了应用程序版本1.0和许多不同的内部版本号。 1.1,1.0.1,1.2,1.3,1.0.3 ..没有任何作用。 我不断收到这个错误。 在iTunes上只有一个build立连接(1.0) 我试过没有二进制提交,它说我需要一个。 我什至试图改变应用程序版本1.1连接iTunes,然后上传1.1(1.0),并失败以及相同的重复问题。 任何人都有这个问题?

何时使用UICollectionView而不是UITableView?

我发现UICollectionView就像在iOS6中引入的UITableView的升级版本,但是什么时候应该selectUICollectionView而不是UITableView ? 还有使用UITableView应用程序,如果UICollectionView可以做任何事情UITableView可以做,为什么人们仍然使用UITableView ? 就表演而言,是否有区别? 谢谢!

带NSPredicate的NSArray使用NOT IN

我有一个NSArray,我想用NSPredicate过滤掉某些对象,我希望能使用NOT IN,因为我看到我可以轻松地做一个IN。 所以我有我的数组: self.categoriesList 然后我得到我想要删除的值: NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"]; 这给了我一个ParentCategoryID列表我不想显示的类别,所以我想我可以使用NSPredicate来删除它们: self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]]; 这失败了: reason: 'Unable to parse the format string "CategoryID NOT IN %@"' 如果我只想使用IN,那当然是完美的。