草庐IT

call_me_virtual

全部标签

iOS : ScrollView delegate method inside of CollectionView not call

首先我在.h文件中设置了delegate@interfaceViewController:UIViewController之后只需在collectionview.m文件中调用此方法-(void)scrollViewDidScroll:(UIScrollView*)scrollView{NSLog(@"scrollViewDidScroll");}但不调用这个方法。 最佳答案 简单一点在.m文件中添加以下行yourCollectionView.delegate=self;及下方添加.hUICollectionViewDelegate移

ios - 调用 [JSValue callWithArguments :] locks UI when alert() is called

使用UIWebView中的JSContext我创建了一个作为ObjectiveCblock实现的javascript函数:JSContext*js=...//getcontectfromwebviewjs[@"aFunc"]=^(JSValue*aString,JSValue*callback){NSString*realString=[aStringtoString];MyOperation*op=[[MyOperationalloc]initWithString:realStringandCallback:callback];//Dosomeheavyliftinginbackgr

ios - 付款队列 :(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions is not called while restoreCompletedTransactions

您好,我需要在Inapp-Purchase中实现恢复功能,为此制作了一个调用方法的“恢复”按钮-(void)restorePurchasedProductsWithProductId:(NSString*)prodID{_productIdsArray=[[NSMutableArrayalloc]init];productID=[prodIDretain];[[SKPaymentQueuedefaultQueue]restoreCompletedTransactions];}它给了我一个弹出窗口,让我输入appleid的密码。然后什么都没有发生。我在某处读到它叫-(void)payme

ios - setNeedsDisplayInMapRect 不触发新的 drawMapRect : call

我正在使用自定义MKOverlay/MKOverlayView用我自己的异步加载的图block完全覆盖Googlebasemap。当我收到对覆盖View的canDrawMapRect:zoomScale:调用(并在这种情况下返回FALSE)时,我遵循请求卸载图block的模式,然后调用setNeedsDisplayInMapRect:zoomScale:一旦瓷砖可用。这一切通常都有效,并且在模拟器中似乎完美运行。但是,在设备上,我有时会在叠加层中看到一个“洞”——缺失的图block。我可以看到该图block已被请求,并且请求已完成。我可以看到我调用了setNeedsDisplayInM

ios - NSURLProtocol canInitWithRequest : called multiple times

我们的应用程序中有很多WebView,我最近添加了一个NSURLProtocol来拦截来自它们的一些请求。我注意到一些WebView多次调用+[NSURLPRotocolcanInitWithRequest:]方法,似乎是同一个请求。有时6或7次。我试图弄清楚为什么会发生这种情况。有没有人有这方面的经验?我已经注销了[NSURLabsoluteString]和httpMethod值,它们对于每个请求都是相同的。我希望此方法只会针对服务器所需的任何给定文件或资源调用一次,而不是多次。它似乎因网页而异。有什么想法吗? 最佳答案 我不是专

ios - 主线程检查器 : UI API called on a background thread: -[UIApplication delegate]

Xcode9似乎报告了很多对UIApplication属性的主线程调用。即使UI没有更新,这也特别麻烦,因为日志的扩展会产生默认环境。4TestApp0x0000000101c262e0__39-[ViewControllerviewDidLoad]_block_invoke+1965libdispatch.dylib0x0000000102279654_dispatch_call_block_and_release+246libdispatch.dylib0x0000000102279614_dispatch_client_callout+167libdispatch.dylib0x

iphone - 是否 applicationDidFinishLaunching : get called when application is updated and launched first time?

applicationDidFinishLaunching是否保证在应用程序更新后调用?(当用户首次启动更新版本时。)换句话说,如果旧版本在更新过程中以后台模式运行,它会被杀死吗? 最佳答案 是的。如果它是后台的,更新程序将在升级之前杀死你的应用程序。这需要发生,因为更新通常会涉及锁定的文件和数据库迁移。 关于iphone-是否applicationDidFinishLaunching:getcalledwhenapplicationisupdatedandlaunchedfirstti

ios - TableView : cellForRowAtIndexPath: get called not only for visible cells?

我有一个带有部分的tableView,可以打开和关闭。所以,当我点击一个部分打开它时,它被单元格填满,并且-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)被调用我在-(NSInteger)tableView:(UITableView*)tableViewnumberOfRowsInSection:(NSInteger)section中提供的次数。这样对吗?不应该只是可见细胞的数量吗?因为我的情况很糟糕:我有很多自定义单元格(50~100个单元格)并调用-(UI

ios - 圆弧 : how to inject custom dealloc IMP in object which in turn calls original dealloc without causing malloc error

我正在尝试执行以下操作:获得类'deallocIMP向所述类中注入(inject)一个自定义IMP,它基本上调用原始的deallocIMP当所述类的一个实例被释放时,两个IMP都应该运行。这是我的尝试:@implementationClassB-(void)dealloc{NSLog(@"\n%@|%@",self,NSStringFromSelector(_cmd));}@end@implementationClassC-(void)swizzleMe:(id)target{SELoriginalDeallocSelector=NSSelectorFromString(@"deall

iOS UI 测试失败,因为 "Application is not running, unable to get Accessibility data. Did you call -launch?"

如果这是一个重复的问题,我深表歉意。我找不到一个,我很茫然。我的测试无法通过,因为该应用程序未启动。我运行了测试并观看了模拟器,使用普通应用程序(用于单元测试),它会在测试运行后打开和关闭,但我的“MyAppUITests”应用程序看起来准备好打开并在启动时崩溃这就是为什么我得到Applicationisnotrunning,unabletogetAccessibilitydata.您是否调用了-launch消息。UI测试运行时的控制台:TestCase'-[FizzBuzzUITests.ViewControllerUITeststestTapNumberButtonIncremen