Pergunta

Eu tenho esse código:

- (void)viewDidLoad {
[super viewDidLoad];
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}

Em primeiro lugar, eu criei um UIImageView com IBOutlet. Paisagem está apontando para que UIImageView. Em InterfaceBuilder Eu disse para mostrar uma imagem específica em que UIImageView. Ele nunca muda. Eu sempre ver a imagem que eu especificado no InterfaceBuilder. Mas eu quero configurá-lo de forma programática. Como posso fazer isso?

Foi útil?

Solução

É possível que você não tem uma exibição personalizada criada para o arquivo nib? Eu tive o mesmo problema. Eu criei uma subclasse UIView para esse controlador de vista, entrou em Interface Builder e definir a fim de que UIView subclasse e, em seguida, adicionado um cabeçalho de importação para o UIView para a classe Controller. isso é o que fez por mim

Outras dicas

Tente chamar setNeedsDisplay na visão depois de alterar a imagem:

   [landscape setNeedsDisplay];

Adicione este código, pode ajudá-lo:

-(void)viewDidAppear:(BOOL)animated 
{
landscape.image = [UIImage imageNamed:@"tenerife1.png"];
}

Não se esqueça sobre a conexão entre ImageView e proprietário do arquivo no InterfaceBuilder.

é só você precisa depois que:

landscape.image = [UIImage imageNamed:@"tenerife1.png"];
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top