Objota O mundo orientado a objetos

Animação fadeIn com UIView

Posted on setembro 13, 2012

Posted by Pedro

Um exemplo simples para realizar a animação de um UIView.

Básicamente criamos uma instancia da Classe UIView e adicionamos ela a ViewController. Após isso aplicamos uma animação de fadein de 2.0 segundos.

Importante lembrar que esse código deve ir dentro do método - (void)viewDidLoad do ViewController

Obs: Isso é um exemplo simples, pois você pode usar diversas outras propriedades que também irá funcionar, como por exemplo: frame, alpha, transform (bastante usado em caso de animação 3D). Outras opções também podem ser adicionadas a animação, como por exemplo um seletor para quando terminar a animação, para quando iniciar a animação, EasyIn, EasyOut, transição, etc.



UIView *minhaView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 300)] autorelease];
minhaView.backgroundColor = [UIColor redColor];

[self.view addSubview:minhaView];

minhaView.alpha = 0.0;

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2.0];

minhaView.alpha = 1.0;

[UIView commitAnimations];



Até a próxima galera!

WBProgressView – Barra de progresso personalizada para iPhone / iPad

Posted on janeiro 31, 2011

Posted by Pedro

Contribuindo ai para o conhecimento de vocês leitores do objota, quero apresentar para vocês a WBProgressView. Esse componente foi criado por mim para facilitar na criação de barras personalizadas de load na aplicação. Nesse POST eu vou mostrar como usar esse componente e como personalizar caso necessário.

Os arquivos que compõem esse componente são:
WBProgressView.h
WBProgressView.m
ativo-bar.png
inativo-bar.png

Para usar o componente é preciso basicamente importar a classe, informar a imagem do estado ativo e a imagem do estado inativo.
Então vamos ao exemplo:

Primeiramente crie um projeto com o nome de ProgressBar. Logo depois declare a variável dentro do .h( ProgressBarViewController.h) do nosso viewController principal:


#import <UIKit/UIKit.h>
#import "WBProgressView.h"

@interface ProgressBarViewController : UIViewController {
	WBProgressView *progress;
}

@end

Agora no arquivo .m (ProgressBarViewController.m) deixe exatamente como embaixo. Nós vamos fazer com que a barra seja atualizada a cada 1 segundo, adicionando mais 1 a cada passagem.

//Não esqueça de colocar as imagens do componente dentro do seu projeto.

#import "ProgressBarViewController.h"

@implementation ProgressBarViewController

- (void)viewDidLoad {

        [super viewDidLoad];

        progress = [[WBProgressView alloc] initWithFrame:CGRectMake(10, 10, 400, 14)];
	progress.tileActive = [UIImage imageNamed:@"ativo-bar.png"];
	progress.tileInactive = [UIImage imageNamed:@"inativo-bar.png"];
	progress.max = 20.0;
	progress.min = 5.0;
	progress.value = 5.0;

	[self.view addSubview:progress];

	[progress release];

	[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(addValue) userInfo:nil repeats:NO];

}

- (void)addValue {

	if(progress.value != 20.0){

		progress.value += 0.5;
		[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(addValue) userInfo:nil repeats:NO];

	}

}

- (void)dealloc {
    [super dealloc];
    [progress release];
}

@end

Na classe NSTimer falamos para executar um determinado método a cada 1 segundo. Na propriedade max da classe WBProgressView serve para setar qual o valor máximo que o progress irá receber e em min o valor mínimo.

Caso queira personalizar a imagem do load, é só você trocar essas imagens de ativo e inativo por uma imagem que você quer :)...

Agora é só executar o programa e ver o resultado.

Pronto!!! É apenas isso. Simples não?
Qualquer dúvida ou sugestão postem por favor.

Até a próxima.

arquivos do post

Hello world em objective-C na plataforma iPhone ou iPad

Posted on novembro 2, 2010

Posted by Pedro

Bom galera, como prometido eu vou começar com os meus artigos sobre desenvolvimento para iPhone e iPad (ou melhor iOS).

Como alguns de vocês já devem saber, a linguagem utilizada para desenvolvimento nessa plataforma é o Objective-C (linguagem derivada do C, com um desempenho surpreendente e orientada a objetos).

Para quem não conhece nada da linguagem, não se preocupe, pois no meio dos artigos vou explicar o que cada comando faz e o porque estamos utilizando os mesmos.

Como qualquer primeiro artigo, vamos fazer o clássico “Hello World”, em Objective-C já usando o Kit de desenvolvimento da Apple o UIKit.

No UIKit temos basicamente “tudo o que precisamos” para desenvolver aplicações para o iOS. Dentro desse Kit temos componentes como o UIView, que basicamente todos os componentes gráficos são derivados dessa classe.

Para iniciar nosso projeto precisamos primeiro ter um Mac em mãos (se tiver um PC com hackintosh também pode usar, porém uma hora você irá precisar de um Mac, acredite). Se você ainda não instalou o SDK (que vem com a IDE Xcode), acesse o endereço http://developer.apple.com/devcenter/ios/index.action e faça o download (precisa fazer o cadastro na Apple para fazer o download, é de graça o cadastro para o download).

Feito isso e com o Xcode já instalado, ai você pode iniciar o desenvolvimento de suas aplicações para a plataforma iOS.


Como criar um projeto no Xcode?

Para iniciar seu novo projeto, você deve clicar no ícone do Xcode e irá aparecer uma tela conforme abaixo:

Então clique em Create a new Xcode project, ao clicar nesse botão irá aparecer a tela para selecionar o template do projeto que você quer iniciar, no nosso caso vamos escolher o View-based Application que fica na caixa de seleção Application, no campo Product selecione para qual device você irá iniciar o projeto, no nosso caso você pode selecionar iPad, pois será a mesma coisa para iPhone e iPad, o que vai mudar são as configurações e tamanho de arquivos .xib (arquivos de interface gráfica que ele irá gerar), que nosso assistente irá gerar para nós.

Quando você clicar no botão Choose aparecerá para você a caixa de diálogo onde será salvo o projeto. Escolha um local e salve o projeto como o nome de HelloWorld.

Ao salvar o projeto, nosso ambiente de trabalho vai aparecer na tela para começarmos a trabalhar no nosso código, mas antes vale ressaltar alguns pontos importantes do nosso ambiente de desenvolvimento.

1 – Nessa pasta estão as classes da nossa aplicação, todas as classes criadas, por motivos de organização iremos sempre deixar aqui.

2 – Nessa pasta geralmente deixamos apenas esses arquivos mesmo, que é a classe que irá iniciar nossa aplicação e o arquivos que faz o import automático do frameworks quer serão usados em todas as classes do projeto, por padrão ele importa o UIKit e o Foundation.

3 – Na pasta Resources ficam todos os arquivos de imagem, .plist (arquivos que geralmente são usados como config da aplicação), .xib (arquivos de interface gráfica que são editados pelo Interface Builder) e arquivos de dados (XML, BD, etc.).

4 – Todos os frameworks que foram importados para a aplicação.

5 – O nome da App (executável, vamos dizer assim para os que estão familiarizado com windows) que será gerado.

6 – Na pasta Targets ficam todos os arquivos que irão fazer parte do pacote da aplicação na hora de compilar. Então quando tiver algum problema de um determinado arquivo não estiver sendo interpretado o problema pode esta nessa pasta. Eles são divididos em arquivos que serão compilados, arquivos de resource e frameworks.

7 – Ao clicar em algum arquivo, suas informações para edição ou para visualização serão mostrados aqui.


Vamos ao código

Procure o arquivo HelloWorldViewController.m e dentro desse arquivo encontre o método - (void)viewDidLoad, e dentro desse método coloque o seguinte:

[super viewDidLoad];

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"My first program" message:@"Hello world" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];

[alert show];

[alert release];


Após isso podemos executar nosso primeiro programa em objective-C, indo no menu build e clicando em build and run e ver o resultado (você também pode executar pressionando command + Y).

Se tudo funcionou OK, ou seja, se apareceu um alert na sua tela, veja a explicação do código abaixo, se não baixe os arquivos que estão no final do post e tente executar.

Primeiro chamamos o método viewDidLoad da super classe UIViewController e logo depois alocamos e iniciamos um objeto UIAlertView com os parâmetros para o título, mensagem, delegate (ainda temos muito o que falar sobre delegate), texto para o botão cancelar e falamos que não tem outros botões passando o valor nil em otherButtonTitles.

Então pedimos para exibir chamando o método show do objeto e finalmente removemos o objeto da memória ( [alert release] ).

Bom galera, então e isso. Chegamos ao fim do nosso exemplo mais do que simples de um Hello World em Objective-c Usando o UIKit.

Espero que tenham gostado. Dúvidas reclamações e sugestões postem aqui por favor, para que assim eu possa melhorar nos seguintes post`s.

Vlwww…

arquivos do post

Links importantes para desenvolvedores iPhone / iPad

Posted on agosto 25, 2010

Posted by Pedro

Galera para quem está com dificuldades em iniciar com o desenvolvimento para iPhone / iPad segue alguns links que jugo muito importates para iniciar essa "batalha" em busca de conhecimento que de certa forma está escasso aqui no Brasil.

Digamos que 99,9% do conteúdo está em inglês, então quem não possui uma boa leitura em inglês pode jogar no tradutor do google para ler.. hehe, mas o melhor mesmo é aproveitar a leva e estudar um pouco de inglês também.

Esses são os principais links:
http://developer.apple.com/ipad/sdk/index.html - Para quem está interessado em informações do iPad

http://guides.macrumors.com/Objective-C_Tutorial - Tutorial muito simples para quem está iniciando o estudo em objective-c.

http://www.iphonedevsdk.com/forum/tags/objective-c.html -  Aqui você vai encontrar 90% dos seus problemas já resolvidos.

http://developer.apple.com/iphone/library/navigation/index.html - Todas as informações que você precisa para iniciantes e programadores avançados na plataforma.

http://webclaudio.wordpress.com/category/desenvolvimento/iphone/ - Blog simplesmente fantástico sobre desenvolvimento para iPhone (em PT-BR).

http://www.edumobile.org/iphone/category/iphone-programming-tutorials/ - Tutoriais muito bacanas. Vale a pena conferir.

Essa página será atualizada com novas referências de links para estudos constantemente. Então deixe em seus favoritos e sempre que possível olhe para ver se possui alguma novidade.

E claro, você pode acompanhar o site do objota que sempre será atualizado com novas informações e tutoriais sobre iPhone / iPad.

Obrigado pessoal, e até a próxima!