Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define kBgQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)
- -(void)searchBar:(UISearchBar*)searchBar textDidChange:(NSString*)text
- {
- if(text.length == 0)
- {
- jsonResults = nil;
- [self.tableView reloadData];
- }
- else
- {
- jsonResults = nil;
- [self.tableView reloadData];
- NSURL *searchUrl = [NSURL URLWithString:[NSString stringWithFormat:@"https://itunes.apple.com/search?term=%@&country=gb&entity=software",text]];
- dispatch_async(kBgQueue, ^{
- NSData* data = [NSData dataWithContentsOfURL:searchUrl];
- [self performSelectorOnMainThread:@selector(fetchedData:)
- withObject:data waitUntilDone:NO];
- });
- }
- }
- -(void)fetchedData:(NSData *)responseData{
- NSError* error;
- NSDictionary* json = [NSJSONSerialization
- JSONObjectWithData:responseData
- options:kNilOptions
- error:&error];
- jsonResults = [json objectForKey:@"results"];
- [self.tableView reloadData];
- }
- dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
- //Do the computing-research
- dispatch_async(dispatch_get_main_queue(), ^{
- //do UI update here
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement