Guest User

Untitled

a guest
Oct 24th, 2017
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //
  2. //  TrackeesViewController.m
  3.  
  4.  
  5. #import "TrackeesViewController.h"
  6. #import "SFHttpRequestDispatcher.h"
  7. #import "NSURLConnection-block.h"
  8. #import "SFHttpRequestDispatcher.h"
  9. #import "Util.h"
  10.  
  11. @implementation TrackeesViewController
  12.  
  13. @synthesize trackees;
  14.  
  15. - (void) showBusyDialog{
  16.     HUD = [[MBProgressHUD alloc] initWithView:self.view];
  17.     [self.view addSubview:HUD];
  18.     HUD.delegate = self;
  19.     HUD.labelText = @"Loading Trackees...";
  20.     [HUD show:YES];
  21. }
  22.  
  23. -(void)setTrackeesFromBG:(NSArray*)theTrackees{
  24.     if([NSThread currentThread] != [NSThread mainThread]){
  25.         [self performSelectorOnMainThread:_cmd withObject:theTrackees waitUntilDone:YES];
  26.         return;
  27.     }
  28.  
  29.     NSArray* mainThreadTrackees = [theTrackees copy];
  30.     self.trackees = mainThreadTrackees;
  31.     [mainThreadTrackees release];
  32. }
  33.  
  34. -(void)viewDidLoad{
  35.     [self showBusyDialog];
  36.     User *user = [[[User alloc] initWithPhoneNumber:@"07032314287"
  37.                                            password:@"testtest"]autorelease];
  38.  
  39.     SFHttpRequestDispatcher *dispatcher = [Util dispatcherForGetTrackersForUser:user];
  40.     [NSURLConnection asyncRequest:[dispatcher doGetOrPost]
  41.                           success:^(NSData *data, NSURLResponse *response) {  
  42.                               NSLog(@"Successfully Got Trackers");
  43.                               NSArray *jsonArray = [data objectFromJSONData];
  44.                               self.trackees = jsonArray;
  45.                               [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];
  46.                               NSLog(@"%@", [jsonArray description]);
  47.                              
  48.                 //-objectFromJSONData should return an autoreleased array, no need to release here
  49.                 //[jsonArray release];
  50.                               [self performSelectorOnMainThread:@selector(hudWasHidden:) withObject:HUD waitUntilDone:NO];
  51.                           }
  52.                           failure:^(NSData *data, NSError *error){  
  53.                               NSLog(@"Failure Getting Trackers");
  54.                               [self performSelectorOnMainThread:@selector(hudWasHidden:) withObject:HUD waitUntilDone:NO];
  55.                           }
  56.      ];  
  57. }
  58.  
  59. -(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
  60.     return [self.trackees count];
  61. }
  62.  
  63. -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
  64.     static NSString* TrackeeString = @"TrackeeString";
  65.     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:TrackeeString];
  66.     if(nil == cell){
  67.         cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:TrackeeString]autorelease];
  68.     }
  69.     NSUInteger row = [indexPath row];
  70.     NSString *trackeeJSON = [trackees objectAtIndex:row];
  71.     Person *person = [Person fromJSON:trackeeJSON];
  72.     cell.textLabel.text = person.phoneNumber;
  73.     return cell;
  74. }
  75.  
  76. #pragma mark -
  77. #pragma mark MBProgressHUDDelegate methods
  78. - (void)hudWasHidden:(MBProgressHUD *)hud {
  79.     // Remove HUD from screen when the HUD was hidded
  80.     [HUD removeFromSuperview];
  81.     [HUD release];
  82.     HUD = nil;
  83. }
  84.  
  85.  
  86.  
  87. @end
  88.  
  89.  
  90. //error message below:
  91. 2011-09-06 11:33:14.492 mtracker[28687:207] *** Assertion failure in -[UITableView _createPreparedCellForGlobalRow:withIndexPath:], /SourceCache/UIKit_Sim/UIKit-1448.89/UITableView.m:5678
  92. sharedlibrary apply-load-rules all
Add Comment
Please, Sign In to add comment