Eu estava pensando que talvez algo assim pudesse funcionar:
for (UIView* b in self.view.subviews)
{
[b removeFromSuperview];
}
Eu quero remover todo tipo de subvisualização. Imagens de usuário, botões, campos de texto etc.
iphone
objective-c
ios
uikit
dgund
fonte
fonte
b
seria imediatamente removido dosubviews
array, causando uma mutação dentro de um loop de enumeração rápido, o que é proibido.copy
especificador significa que ele faz uma cópia quando definido ; nada é especificado sobre como obter. É bem provável que uma cópia seja retornada, mas isso não faz parte da definição da propriedade.Respostas:
É idêntico à sua variante, mas um pouco mais curto.
fonte
Versão idêntica em Swift.
fonte
Rápido:
fonte
Você pode usar assim
view é a view da qual você deseja remover tudo. você está apenas removendo cada subvisualização fazendo forEach
fonte
Para Swift 4 +. Você pode fazer uma extensão para
UIView
. Ligue sempre que necessário.fonte