title: Error: unrecognized selector sent to instance
body: <p>I have a custom object, <code>Spaces</code>:</p>
  
  <pre><code>#import "Spaces.h"
  
  
  @implementation Spaces
  
  @synthesize spaceName;
  @synthesize spaceUsers;
  @synthesize spaceIcon;
  @synthesize spaceID;
  
  @synthesize imageURLString;
  
  
  - (void)dealloc
  {
      [spaceName release];
      [spaceUsers release];
      [spaceIcon release];
  
      [imageURLString release];
  
      [super dealloc];
  }
  
  @end
  </code></pre>
  
  <p>My root view controller implements a <code>cellForRowAtIndexPath:</code> and grabs from an <code>NSArray</code> of <code>Spaces</code>:</p>
  
  <pre><code>    [[cell spaceName] setText:aSpace.spaceName];
      [[cell spaceChatType] setText:@"People"];
      [[cell spaceActiveUsers] setText:aSpace.spaceUsers];
  </code></pre>
  
  <p>This works fine and I can click to go into the detail view and back to the list, but after maybe 5-6 clicks back and forth between the table view and detail view, I get an error at <code>[[cell spaceName] setText:aSpace.spaceName];</code> which is </p>
  
  <blockquote>
    <p>'-[__NSCFSet spaceName]: unrecognized selector sent to instance 0x6047b90'"</p>
  </blockquote>
  
  <p>Please help! Any insight will be very appreciated!</p>
  
  <p>UPDATE:</p>
  
  <p>I'm still getting the same error but I've narrowed it down to the this: </p>
  
  <p>-I'm creating a detail view controller on didSelectRowAtIndexPath...
  -The detail view is being pushed to the viewcontroller and displays fine, I have a back button added as well.
  -The detail view loads information and refreshes on a timer
  -Pressing the back button goes back to the table list view</p>
  
  <p>This is the problem my detail view is not being released from memory so the more I go back and forth between the views the more timers were going off simultaneously. I added a check to viewWillDisappear that stops the timer by setting a bool value.</p>
  
  <p>I noticed that the detail view is not unloading... </p>
  
  <p>From the RootViewController:</p>
  
  <pre><code>- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
  {
      //no longer on initial view
      isinit = NO;
  
      //hide keyboard
      [spacesSearch resignFirstResponder];
  
      if (spaces != nil &amp;&amp; spaces.count &gt; 0)
      {
          //set back button reference
          UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Spaces" style:UIBarButtonItemStylePlain target:self action:@selector(returnSpacesList:)];  
          self.navigationItem.backBarButtonItem = backButton;
  
          [backButton release];
  
          DetailViewController *details = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; 
  
          //Grab Data from selected Space object and pass to DetailViewController
          Spaces *aSpace = nil;
          if (tableView == self.searchDisplayController.searchResultsTableView)
          {
              if ([self.filteredListContent count] == 0)
              {
                  //self.lastSearchText
                  NSLog(@"Create new space code!");
              }
              else
              {
                  aSpace = [self.filteredListContent objectAtIndex:indexPath.row];
              }
          }
          else
          {
              aSpace = [spaces objectAtIndex:[indexPath row]];
          }
  
          //set title and display
          self.navigationController.title = [NSString stringWithFormat:@"/%@/",aSpace.spaceName];
  
          //pass data
          [details passedValue:aSpace.spaceID :aSpace.spaceName];
  
          [self.navigationController pushViewController:details animated:YES];
  
          [aSpace release];
          [details release];
  
      }
  }
  </code></pre>
  
  <p>How can I force the detail view to be released from memory?</p>
  
  <p>Thank you</p>