草庐IT

Block_size

全部标签

iOS 自动布局约束 : ignore hidden or zero-size view?

我需要水平布局两个标签和一个图像:[label1]-10-[icon]-10-[label2]问题是当label1没有文本(即空文本)时,左边缘和icon之间仍然有10pts的间距。我目前的做法是,每当我设置任何标签的文本时,我都会删除所有约束并重新添加它们,间距取决于文本。这显然效率不高,因为标签位于可以重复使用的单元格中,因此每次重复使用单元格时,都会删除并重新应用约束。接下来我想尝试的是为label1和icon设置一个专用约束,所以每次我设置label1的文本,我将添加或删除专用约束。我也想知道有没有更好的方法来做到这一点?如果它从根本上改变了我布局它们的方式,那很好。谢谢

ios - ASIHTTPRequest 下载 : Should I request a large file or many small size files?

我正在为我的iOS项目使用ASIHTTPRequest库。我的应用程序是关于下载一本电子书(包含150多个jpg文件)。我有两个选择:压缩所有图像并只请求一个压缩文件(大约200MB)。逐个请求图像(它将成为150多个请求)。如果每天有1000多个用户同时请求电子书,哪个选项最好? 最佳答案 这不是您问题的100%准确答案,但根据经验,我相信您会发现它很有帮助。我曾经做过一个有点类似的应用程序,我应该更新(重新下载)大量的xml文件(最多几千个)。一个接一个的方法相当慢,但是有一个很好的NSOperation和NSQueue管理,它

iOS facebook 图形请求完成处理程序 block 未调用

我正在使用FacebookiOSSDK和Parse在我的一个应用程序上通过Facebook处理用户登录。然而,在使用iOS9SDK构建应用程序后,该应用程序似乎无法从Facebook的图形API获取信息。这是我用来从Facebook提取信息的代码片段FBSDKGraphRequest*request=[[FBSDKGraphRequestalloc]initWithGraphPath:@"me"parameters:@{@"fields":@"name,email,id,gender"}HTTPMethod:@"GET"];[requeststartWithCompletionHand

ios - 如何实现通用的 do-try-catch block 以捕获操作中抛出的所有错误

在Swift3.0中,如何实现通用的do-try-catchblock来捕获操作引发的所有错误。Apple文档说要实现类型为ErrorType的枚举器,它列出了抛出的错误。假设如果我们不知道操作会抛出什么样的错误,那么如何实现它。以下代码仅用于说明目的。在这里我可以捕捉到错误,但我不知道是什么导致了这个错误。在objective-c中,我们可以得到错误发生的确切原因,但在这里我们只得到我们分配给它的信息。enumAwfulError:ErrorType{caseCannotConvertStringToIntegertypecasegeneral(String)}funcConvert

ios - 如何获取 block 内变量的值

有没有办法用completionHandler检查“type”变量的值。-(void)sendApiMethod:(NSString*)apiNameApiType:(NSString*)type{[SendAPIsetAPIWithName:@"APIName"completionHandler:^(NSArray*errors){if([typeisEqualToString:@"Login"]){///CallSomeOtherfunction}}];} 最佳答案 我写了一小段代码来验证是否有效(只读你的问题我会说是作为Dro

objective-c - 在 block 保留周期中调用函数

如果我从block内部调用的函数引用“self”,是否会创建一个保留循环?__weakidweakSelf=self;-(void)firstFunction{idstrongSelf=weakSelf;if(!strongSelf)return;[anObjectperformBlock:^{[strongSelfsecondFunction];}];}-(void)secondFunction{[selfdoSomeCrazyStuff];self.counter++;//etc.}我在“secondFunction”中调用“self”,是否需要将我的弱指针传递给此函数并改为使用它

ios - 在同一线程上运行 block

我遇到了一些我无法弄清楚的问题。如果我有一个带有Block参数的方法签名,其中有一个回调,并且在我的方法中我使用了一个有另一个Block的API,API执行async并且我的代码继续并调用我的回调方法.这让我的ViewController知道一切都已完成,而实际上通常不是因为APIblock。由于我的方法总是调用回调方法(并且异步运行),我可以强制使用block的API调用同步运行吗?ViewController[self.tagReposync:^(BOOLfinished){if(finished){NSLog(@"Synccompleted.");if(self.tagRepo.

ios - 如何定位 block 代码

在DebugMemoryGraph中,我有一个由__NSMallocBlock__捕获的自定义View该block的描述只是那么现在如何定位block代码呢? 最佳答案 您应该编辑方案设置,并在“诊断”»“日志记录”下启用“Malloc堆栈”。然后,选择“内存检查器”时,您会看到堆栈跟踪:您甚至可以单击堆栈中您的方法名称旁边的箭头,它将跳转到分配此block的那部分代码。在我上面的示例中,该block是在viewDidLoad中分配的。确保在完成诊断后关闭此设置。 关于ios-如何定位b

ios - viewWillTransitionToSize :withTransitionCoordinator return wrong size in simulator

您好,我正在使用这段代码来支持iPhone6上的splitViewController:-(void)viewWillTransitionToSize:(CGSize)sizewithTransitionCoordinator:(id)coordinator{self.forcedTraitCollection=nil;if(size.height==320.0||size.width==320.0){self.forcedTraitCollection=nil;}else{self.forcedTraitCollection=[UITraitCollectiontraitCollec

ios - 在 Xcode 9 中添加 block 注释的键盘快捷方式?

我正在向项目添加文档,但没有找到任何添加block注释的快捷方式。我读过MarkupFormattingReferenceguide但找不到捷径。我正在使用Option⌥+Command⌘+/添加评论,但它添加了///对于每一行。///Initializer//////-Parameters:///-userId:UserId///-userName:UserName///-applicationVersion:ApplicarionVersioninit(_userId:String,withUserNameuserName:String,withApplicationVersion