Objota O mundo orientado a objetos

Utilizando objeto UIView do framework UIkit

Posted on janeiro 6, 2012

A UIView é um objeto visual genérico previsto no framework UIKit. Por tanto qualquer objeto visivel na tela é um UIView ou extende-se a esta classe.
Exemplificando abaixo existe uma implementação com o UIView.

- (void)viewDidLoad
{
 [super viewDidLoad];

 UIView * objetoVisual = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 300, 60)];

 objetoVisual.backgroundColor = [UIColor redColor];

 [self.view addSubview:objetoVisual];

 [objetoVisual release];
}

O UIKit provê uma interface bem definida de objetos, sendo todos focados em suas respectivas funções. Como exemplo: O UIImage, responsável por carregar os dados de uma imagem na memória, e o UIImageView sendo responsável por mostrar a imagem na tela.

Com base nisso podemos concluir (a grosso modo) que todo objeto do UIKit terminado em View faz uso da interface da classe UIView, que mostra objetos na tela. Ironicamente o UIImageView não utiliza o UIView como base, pois é processado de forma diferente por ser uma simples imagem.
Um UIView pode conter "n" elementos visuais dentro dele, ou seja, outros UIView's. Abaixo segue uma implementação com o uso de SubViews (Elementos visuais dentro de outro elemento visual)


- (void)viewDidLoad
{
 [super viewDidLoad];

 UIView * objetoVisual = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 300, 60)];
 objetoVisual.backgroundColor = [UIColor redColor];

 UIView * subElemento = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 200, 40)];
 subElemento.backgroundColor = [UIColor blueColor];

 [objetoVisual addSubview:subElemento];

 [self.view addSubview:objetoVisual];

 [objetoVisual release];
 [subElemento release];
}

Nota: É muito interessante checar a documentação, pois ela possui uma boa definição de toda a interface, sendo alguns casos exemplificados com implementações.

Terminamos por aqui, bons estudos.

Posted by Rodrigo Ireno

Comentários (2) Trackbacks (0)
  1. Opa!! fiz um exemplo parecido com o seu, porém estou exibindo imagens a partir de uma URL mas não consigo fazer o último comando “release”!
    Aparentemente quando é uma imagem apartir de uma URL o relase é desativado.
    Você pode me dar uma dica?


Leave a comment

Sem trackbacks