UIViewcontroller never deallocated
===

I came here and ask for your help because i'm on my way to finish my iphone project and i want it to be perfect!

I have some issues with *allocation* and *deallocation* of a *UIViewcontroller*.

Let me explain :

I have a UITableview with custom cells. In each custom cells, a button that will alloc a new UIViewController : ***ListOfAGuestFriendViewController***;

So, i've made a delegate which call a method to make a "flip transition", an show my new ListOfAGuestFriendViewController view.

My problem is, and i've the same problem with **ALL** of my "*addSubiew*", that ***ListOfAGuestFriendViewController*** never get **dealloc**, or get dealloc just **after** the view loaded!

Can someone explain me exactly how can i make a *perfect* addSubview ?

Here's my code :

***When i flip the view :*** 

    -(void)flipAView
    {
        Guest *currentSelectedGuest = [self createAGuestUsingIndexPath:self.selectedIndex];
    
        ListOfAGuestFriendViewController *listOfAGuestFriendViewController = [[ListOfAGuestFriendViewController alloc]init];

        [listOfAGuestFriendViewController setCurrentGuestSelected:currentSelectedGuest];
        [listOfAGuestFriendViewController setMyListOfContactControllerDelegate:self];
    
        [UIView animateWithDuration:0.25 animations:^{
            [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
            [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight 
                               forView:self.tableviewContainerView cache:YES];
            [self.tableviewContainerView addSubview:listOfAGuestFriendViewController.view];
        }completion:^(BOOL finished){
            [listOfAGuestFriendViewController release];
            [self collapseCurrentExpandedCell];
        }];
    }

***When i want to go back :*** 

    -(IBAction)goBackButtonGotPressed:(id)sender{
        [UIView animateWithDuration:0.5 animations:^{
            [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
            [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft 
                               forView:[self.view superview] cache:YES];
            [self.view removeFromSuperview];
        }];
    }

If i remove that line of code :

    [listOfAGuestFriendViewController release];

My listOfAGuestFriendViewController never dealloc.

I don't use properties for this instanciation, but when i do, it's the same!

Please! I really need to understand why!

Sorry again for my bad english, but i'm French ^^