Jesteś na dobrej drodze przy użyciu removeFromSuperView. Ale musisz wysłać wiadomość do widoku, który chcesz usunąć. Podobnie jak Till przykład
[viewB.view removeFromSuperview];
Jednak nie może mieć uchwyt viewB do czasu chcesz go usunąć, jeśli nie są używane właściwości i metody syntezy. Korzystałbym z @property i @synthesize. Więc można użyć:
[self.viewB.view removeFromSuperview];
Innym sposobem jest użycie w tym: (zakładając, że viewB.view to ostatni widok został dodany do viewA.view
[[self.view.subviews objectAtIndex:(self.view.subviews.count - 1)]removeFromSuperview];
Można uzyskać listę wszystkich subviews Twojego viewA przez:
NSLog(@"subviews of viewA.view: %@",self.view.subviews);
próbowałem, awarie app z tego: '- [viewB performSelector: withObject: withObject:]: komunikat wysłany do dealokowane przykład 0xf568d40' – McDermott
można dodawać więcej kodzie trudno? wiesz, co jest g błędne, bez większego kontekstu. – Sean
Dowiedziałem się, że krach nie był z tym związany. Teraz działa idealnie. – McDermott