Does removefromsuperview remove subviews?

ios, ios6, objective-c

Solution

All views will be removed. If you maintain a `strong` reference to `viewA` then all of the views will still be there and can be added again later. If you don't, they will all be destroyed.

Problem

If I have nested subviews, will all subviews get disposed if i call removefromsuperview? Pseudocode: ``` UIView *viewA = [[UIView alloc] initWithFrame:CGRectMake(0 , 0, 100, 100)]; [self.view addSubview:viewA]; UIView *viewB = [[UIView alloc] initWithFrame:CGRectMake(25 , 25, 50, 50)]; [viewA addSubview:viewB]; UIButton *buttonC = [UIButton buttonWithType:UIButtonTypeRoundedRect]; [viewB addSubview:buttonC]; ``` And then buttonC is pressed: ``` [viewA removeFromSuperView]; ``` All views are removed from the screen, but are they removed properly? Do I need to remove all views manually?

Original source