logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

Definindo a Interface Orientation em aplicativos para IPad

Colocado por DClick Team na(s) categoria(s): 1, 4, 6, Aplicativos, app, apple, AR, arte, auto, back, BI, blog, class, codec, código, código fonte, control, Controles, demo, Desenvolvedor, desenvolvedores, Download, exemplo, flash, fonte, for, FullScreen, git, ide, IE, if, image, int, interface, iphone, Java, Mac, mg, O, Office, on, Orientação, Outros, programação, pt, RIA, Ria’s Geral, screen, Screencast, Sem categoria, swf, TAT, Touch, tv, Twitter, UI, UX, Ved, wave em 11 23rd, 2010 | Sem comentários

Twitter!

Com o lançamento do iPad pela Apple, e a necessidade de adaptar os aplicativos existentes para o iPad, os desenvolvedores encontraram alguns desafios que antes não eram percebidos quando desenvolvendo para iPhone ou iPod Touch.

Todos os devices da apple possuem o acelerômetro e através dele nossa iteração com os dispositivos e aplicativos mudou completamente, saindo de algo “estático” para aplicativos que reagem conforme você posiciona o aparelho.

Essa funcionalidade já quase não é mais percebida nos aplicativos para iPhone, pois quase todos os aplicativos estão preparados para a visualização em Landscape e Portrait. Porém, devido ao tamanho da tela desse device, não existe grande diferença nessas visualizações.

Arrisco em dizer que grande parte das vezes em que rotacionamos o iPhone para Landscape é para ter uma maior área de visualização ou melhor acesso ao teclado para digitar textos mais longos.

Porém, com o iPad essa funcionalidade foi renovada. Alguns fatores como tamanho da tela influenciaram nessa mudança, afinal, com tanto espaço as informações podem ser melhores dispostas para o usuário.

Essa mudança pode ser percebida em grande parte dos aplicativos existentes no iPad, e sua disposição pode mudar da acordo com a necessidade.

Percebam, por exemplo, que para o aplicativo Settings não existe diferenciação entre Portrait e Landscape:

Já, outros aplicativos como Mail e YouTube possuem visualizações bem diferentes de acordo com a orienteção do device:

Mas, e quando estamos desenvolvendo aplicativos mais simples, que não irão possuir tantas formas de visualização, ou mesmo quando estamos aprendendo a trabalhar com esse controle de visualização, como podemos permitir ou bloquear que o aplicativo mude sua visualização?

Quando não estamos criando controles avançados de tratamento dessas visualizações, podemos ter alguns resultados indesejáveis quando o iPad é rotacionado, e toda a UI ser afetada, impactando a UX para o usuário.

Portanto, uma forma simples de permitir, por exemplo, que a aplicação não mude a orientação para Landscape é através do controller da view.

No controller podemos encontrar o método

1
- (BOOL) shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation) interfaceOrientation

Esse método sempre retorna YES, o que significa que ele sempre rotaciona a view de acordo com a orientação.

Podemos permitir quatro tipos de orientação:

  • UIInterfaceOrientationPortrait
  • UIInterfaceOrientationPortraitUpsideDown
  • UIInterfaceOrientationLandscapeLeft
  • UIInterfaceOrientationLandscapeRight

Cada orientação segue o posicionamento do device:

Então, caso nossa view deva responder somente ao modo Portrait e LandscapeLeft, devemos definir o método como abaixo:

1
2
3
4
5
6
7
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

return (interfaceOrientation==UIInterfaceOrientationPortrait ||

interfaceOrientation==UIInterfaceOrientationLandscapeLeft);

}

Qualquer combinação é válida, e caso todas sejam permitidas, devemos manter o método inalterado, conforme abaixo:

1
2
3
4
5
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

return YES;

}

Mais detalhes:

O screencast abaixo demostra a criação de um aplicativo simples, com uma View, e como tratar a InterfaceOrientation com mais detalhes. Ao final do Screencast você deverá conseguir alterar os modos de rotação da forma que desejar, e assim aplicar o conceito em outras aplicações.

O código fonte gerado através do screencast pode ser baixado através do link: OrientationTest(zip)

Deixe seu comentário ou dúvidas.

Artur Fabri

@arturfabri



Veja o post original no blog do autor aqui!  

DClick Team

Escrito por DClick Team @ http://blog.dclick.com.br/pt/
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» Scala – Primeiros Passos
» Agon News S1G7R1
» Arquitetura de Informação – Sketching

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 2791 entradas vindas de 53 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Deveria o RedeRia agregar conteúdo em inglês?
Ver Resultados

AUTORES


Eduardo KrausAlexandre TadashiBindableCognitiva SoluçõesDaniel LopesDaniel SchmitzDanielPedrinhaDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFelipe BorellaFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPablo SouzaPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSamuelFacchinelloSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimWillian ManoXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com