Alguém poderia dar um pequeno exemplo de aplicação do desfoque a uma imagem? Eu tenho tentado descobrir o código por um tempo agora :( ainda novo no obj c!
O
UIVisualEffectView
fornece uma abstração simples sobre efeitos visuais complexos. Dependendo do efeito desejado, os resultados podem afetar o conteúdo em camadas atrás da visualização ou o conteúdo adicionado ao contentView da visualização.Aplique a
UIVisualEffectView
em uma vista existente para aplicar um efeito de desfoque ou vibração à vista existente. Depois de adicionar o UIVisualEffectView à hierarquia de visualizações, adicione quaisquer subvisões ao contentView doUIVisualEffectView
. Não adicione subvisões diretamente aUIVisualEffectView
ele mesmo.
UIVisualEffectView
'scontentView
github.com/onmyway133/blog/issues/124Respostas:
Basta colocar essa visualização de desfoque no imageView. Aqui está um exemplo em Objective-C:
e Swift:
fonte
Aqui está como usar UIVibrancyEffect e UIBlurEffect com UIVisualEffectView
Objetivo-C:
Swift 4:
fonte
extension UILabel { override func tintColorDidChange() { textColor = tintColor; super.tintColorDidChange() } }
removeFromSuperView
, você faz o[self.visualEffectView setHidden:NO];
? Alocar e adicionar à visualização é uma operação cara do que ocultar ou exibir.Você também pode usar o construtor de interface para criar esses efeitos facilmente para situações simples. Como os valores z das vistas dependem da ordem em que estão listados no Esboço do documento, você pode arrastar um
UIVisualEffectView
para o contorno do documento antes da vista que deseja desfocar. Isso cria automaticamente um aninhadoUIView
, que é acontentView
propriedade do dadoUIVisualEffectView
. Aninhe as coisas dentro dessa exibição que você deseja que apareçam sobre o desfoque.Você também pode aproveitar facilmente a vibração
UIVisualEffect
, que criará automaticamente outro aninhadoUIVisualEffectView
no esboço do documento com a vibração ativada por padrão. Você pode adicionar um rótulo ou exibição de texto ao aninhadoUIView
(novamente, acontentView
propriedade doUIVisualEffectView
), para obter o mesmo efeito que o elemento da interface do usuário "> deslize para desbloquear".fonte
Prefiro criar efeitos visuais via Storyboard - nenhum código usado para criar ou manter elementos da interface do usuário. Também me dá suporte total à paisagem. Fiz uma pequena demonstração do uso de UIVisualEffects com Blur e também Vibrancy.
Demo no Github
fonte
Se alguém quiser a resposta no Swift:
Atualização:
A partir de agora, ele está disponível no IB para que você não precise codificar nada :)
fonte
fonte
Isso é usado para desfocar fundos, claros ou escuros, para que o texto possa ser sobreposto mais facilmente. Opcionalmente, você pode ativar a vibração, que faz com que o texto seja renderizado em uma cor brilhante e contrastante ao lado do desfoque.
fonte