Saltar para conteúdo


Foto
- - - - -

Em que ecrã estou?


  • Por favor inicie sessão para responder
5 respostas a este tópico

#1 pmduque

pmduque

    Membro

  • Membros
  • PipPip
  • 33 mensagens

Mensagem publicada 20 November 2010 - 20:10

Desenvolvi um Live Wallpaper (http://www.portugale...s-android.php#/) e gostava de ter a opção de esticar a imagem de fundo por todos os ecrãs da página principal.Para isso preciso de saber quantos ecrãs existem e qual o que está activo. Alguém sabe como fazê-lo? (Ainda tentei usar o WindowManager.getDefaultDisplay().getDisplayId(), mas tal como diz na documentação, esse método não está a funcionar...)

#2 pedronveloso

pedronveloso

    Veloso

  • Administradores
  • 1578 mensagens
  • S8

Mensagem publicada 21 November 2010 - 12:41

Eu acho que isto depende do launcher, mas posso estar enganado. Mesmo pela descrisºao que dás parece-me que ainda não existe suporte para isso pela API.Se for algo especifico só para 1 dispositivo haveria uma solução pelo menos, porque por exemplo, a Samsung guarda um ficheiro de texto onde é actualizada a posição do ecrã que está a ser visto na interface proprietaria deles, o TouchWiz.

#3 pmduque

pmduque

    Membro

  • Membros
  • PipPip
  • 33 mensagens

Mensagem publicada 21 November 2010 - 13:30

Acredito que haja suporte na API algures. Pelo menos há um live wallpaper que utiliza essa informação, o MiltiPicture Live Wallpaper...De qualquer forma, sabes onde posso encontrar esse ficheiro?Obrigado!

#4 pedronveloso

pedronveloso

    Veloso

  • Administradores
  • 1578 mensagens
  • S8

Mensagem publicada 21 November 2010 - 23:34

O ficheiro é este:/dbdata/databases/com.sec.android.app.twlauncher/shared_prefs/launcher.xmlmas só conseguirás ler com root julgo eu. E não há garantia que o ficheiro não mude de sitio de versão para versão. Se existe uma aplicação que faz uso da detecção do ecrã activo, então quase de certeza que existe algo na API, e é uma questão de procurares.

#5 pmduque

pmduque

    Membro

  • Membros
  • PipPip
  • 33 mensagens

Mensagem publicada 22 November 2010 - 20:23

Já descobri como fazer o que queria, mas através de portas travessas...O evento onOffsetsChanged dá a informação que qual a deslocação em relação à dimensão total do ecrã e com as funções:WM = WallpaperManager.getInstance(getApplicationContext());myHeight=WM.getDesiredMinimumHeight();myWidth=WM.getDesiredMinimumWidth();consegue-se saber a total dimensão do ecrã (pretendida).De qualquer forma, obrigado!

#6 pedronveloso

pedronveloso

    Veloso

  • Administradores
  • 1578 mensagens
  • S8

Mensagem publicada 23 November 2010 - 17:17

Já descobri como fazer o que queria, mas através de portas travessas...

Hehe, pois, às vezes é preciso isso. Ainda bem que conseguiste o que querias :D