草庐IT

dispatch-after

全部标签

ios - 无形的执行顺序(dispatch_semaphore_t、dispatch_group_async)以及它们与不同调度队列类型的结合使用

我只是在晚上花了一些时间来研究GCD,尤其是dispatch_semaphore_t,因为我从未使用过它。从来不需要。所以我写了下面的作为测试:-(void)viewDidLoad{UIView*firstView=[[UIViewalloc]initWithFrame:(CGRect){{0,0},self.view.frame.size.width/4,self.view.frame.size.width/5}];firstView.backgroundColor=[UIColorpurpleColor];[self.viewaddSubview:firstView];dispat

ios - dispatch_queue_set_specific 与获取当前队列

我试图弄清楚这两者之间的区别和用法:staticvoid*myFirstQueue="firstThread";dispatch_queue_tfirstQueue=dispatch_queue_create("com.year.new.happy",DISPATCH_QUEUE_CONCURRENT);dispatch_queue_set_specific(firstQueue,myFirstQueue,(void*)myFirstQueue,NULL);问题#1这有什么区别:dispatch_sync(firstQueue,^{if(dispatch_get_specific(my

ios - UITextField 中的自动布局 : Auto Layout still required after executing -layoutSubviews

我将UITextField子类化以在左侧添加标签。我正在使用自动版式来布置标签。但是,我不断遇到此崩溃:下面是我的布局代码:-(void)updateConstraints{self.segmentLabel.translatesAutoresizingMaskIntoConstraints=NO;NSLayoutConstraint*constraint;constraint=[NSLayoutConstraintconstraintWithItem:self.segmentLabelattribute:NSLayoutAttributeHeightrelatedBy:NSLayou

ios - Xcode 6 : 'Answers.h' file not found after Fabric Crashlytics update

我在Xcode6.3.2中的Storyboard中处理一个Objective-C项目。当我尝试构建时突然出现错误:/.../Developer/ProjectName/Crashlytics.framework/Headers/Crashlytics.h:14:9:找不到“Answers.h”文件我已经安装了Crashlytics并在我的应用中运行了几周。我让它通过Fabric插件运行。我切换了Fabric应用程序,发现它最近更新了Crashlytics。在Xcode中,如果我转到“源代码管理”->“提交...”来查看我的更改,它只会显示我所做的更改-这与Crashlytics无关。还

ios - 通过示例了解何时使用 dispatch_get_main_queue 和 requiresMainQueueSetup

前一段时间我在这里问过类似的问题:DifferencerequiresMainQueueSetupanddispatch_get_main_queue?我今天回过头来发现我还没有完全掌握它。当我们为iOS编写ReactNative模块时,iOS端有dispatch_get_main_queue并且react-native需要requiresMainQueueSetup。对于以下包和用例,应该如何使用其中的哪一个?asq-react-native-device-导出包ID等常量的包asq-react-native-sensors-允许从设备陀螺仪和其他传感器订阅和接收数据的包asq-re

objective-c - 具有回调方法的 IOS Grand Central Dispatch

我没有在我的应用程序中使用GCD或太多线程,但我遇到过需要在另一个线程上运行一两个方法的情况。此方法完成后,我需要使用回调中的主线程调用另一个方法。我一直在四处寻找如何检测线程何时完成操作但仍然不太清楚这个问题。我创建了一个测试应用程序,并使用了viewDidLoad方法作为一个快速示例。-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.dispatch_async(dispatch_get_global_queue(DISPATCH_QUE

android - Cordova 视频/音频无法从 cdvfile ://urls after update to 3. 3.0 播放

我的Cordova应用程序从服务器下载音频文件,并使它们可以在设备离线时播放。直到昨天我升级到最新版本时一切正常。最初,下载(通过文件传输插件)和播放(通过媒体插件)都不起作用。进一步研究我发现fileSystem.root.fullPath现在返回一个相对于应用程序本地Web根文件夹的路径,但它过去返回一个完全限定的路径。Cordova现在建议改用fileSystem.root.toURL()(http://cordova.apache.org/news/2014/02/10/plugins-release.html)。这确实解决了文件传输问题。但是,使用新的URL方案不适用于音频文

ios - iPhone 上的 Safari 无法设置伪元素 :after with content\2714 but it works for\2713 的颜色样式

有人知道为什么会这样吗?我希望两个复选标记都是白色的,但是:after元素是黑色的(但是它似乎有一个从白色到黑色的垂直渐变)。它适用于MacBook上的Chrome和Safari。在iPhone上的Safari中打开此示例页面以查看问题:http://output.jsbin.com/lerudihiho/(这里是代码:http://jsbin.com/ponamazoso/edit?html,css,output) 最佳答案 此处的修复类似于您使用U+2714inHTML时的修复:您需要在复选标记后直接添加U+FE0EVARIAT

ios - UISearchBar textDidChange 创建错误 : There are visible views left after reusing them all: { (null) = (null); }

我正在使用带有UISearchBar的UITableViewController。一切似乎都工作正常,除了我在textDidChange方法中收到一个我以前从未见过的奇怪警告。这是我的代码:-(void)searchBar:(UISearchBar*)searchBartextDidChange:(NSString*)searchText{[self.searchResultsremoveAllObjects];if([searchTextisEqualToString:@""]||searchText==nil){[self.tableViewreloadData];return;}

ios - 如何将 dispatch_data_t 转换为 NSData?

这是正确的方法吗?//convertconstvoid*buffer=NULL;size_tsize=0;dispatch_data_tnew_data_file=dispatch_data_create_map(data,&buffer,&size);if(new_data_file){/*toavoidwarningreally-sincedispatch_data_create_mapdemandswecareaboutthereturnarg*/}NSData*nsdata=[[NSDataalloc]initWithBytes:bufferlength:size];//use