Saltar para conteúdo


Foto
- - - - -

Ajuda para construção de diagrama


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

#1 kokia

kokia

    Membro

  • Membros
  • PipPip
  • 33 mensagens

Mensagem publicada 05 October 2010 - 15:42

Estou a começar a programar para Android, e estou agora com uma dúvida de foro técnico: pretendo ter um diagrama com vários pontos seleccionáveis e clickáveis. Como me aconselham a fazer isto? Ter o diagrama como imagem, e depois criar zonas clickáveis (como em html), se é que tal coisa é possível? Ou tenho de criar o dito diagrama de raíz na própria aplicação, para depois fazer algum tipo de ligação aos pontos? Desculpem a questão ser tão ambígua, mas estou tão lost que nem faço ideia que estrutura devo usar no ecrã para conseguir este efeito!

#2 WhiT3Kr0w

WhiT3Kr0w

    Master

  • Administradores
  • 3316 mensagens
  • LocalizaçãoUK
  • Nexus 5, Nexus 10, S2

Mensagem publicada 06 October 2010 - 07:23

Se calhar o mais fácil será posicionares esses "pontos" em cima da imagem como objectos que podes clicar.
Chat/ajuda do fórum: http://l.androidpt.com/chat
Usem a pesquisa por favor. Não insiram perguntas que já foram respondidas inúmeras vezes.
Usem o "Gosto" nos posts para agradecer a quem vos ajuda e não criem posts desnecessários.


Carpe diem quam minimum credula postero.

#3 libre

libre

    Membro

  • Membros
  • PipPip
  • 32 mensagens

Mensagem publicada 06 October 2010 - 08:04

A nível de componentes tanto podes criar um Layout de raiz com as Views todas ou ir criando-as dinamicamente através de código, para o teu caso acho que esta última se aplica melhor.Em relação ao posicionamento, existem várias maneiras de o fazer.Existe o AbsoluteLayout que te permite posicionar Views em determinadas coordenadas do ecrã, a má notícia é que esse tipo de layout está a ser descontinuado e futuramente deixará de ter suporte, pois não funciona muito bem em termos de compatibilidade entre diversos tamanhos e densidades de ecrã.Podes tentar o mesmo com o RelativeLayout, onde o posicionamento de uma View é relativo a uma outra (à sua direita, esquerda, topo, baixo, alinhado às extremidades, centro, etc...).Por fim tens a possibilidade de usar uma Canvas e seres tu a tratar dos desenhos todos. Talvez seja a mais trabalhosa, mas é nessa que vejo uma solução melhor em termos de desenho, por outro lado, a nível de detectar eventos já acho que complicará.Nunca trabalhei, nem planeei, algo que exigisse tanto dinamismo no ecrã. Também ficaria um bocado à toa. O melhor mesmo será criares algumas aplicações pequenas para experimentar soluções, e só depois de chegares a um resultado que funcione e te agrade é que aplicas isso no projecto. Criar uma aplicação grande em que uma das funções centrais foi criada um pouco à experiência e falha... é uma chatice de todo o tamanho. Podes mesmo acabar por perder mais tempo a tentar consertar aquilo do que aquele que terias perdido a estudar melhor o problema e a experimentar pequenas soluções.

#4 kokia

kokia

    Membro

  • Membros
  • PipPip
  • 33 mensagens

Mensagem publicada 07 October 2010 - 08:27

WhiT3Kr0w, parece uma boa ideia, acho que vou experimentar assim.libre, eu sei que devia começar com coisas pequenas, mas isto é um projecto para a faculdade, e aqui não nos dão tempo para funcionar com coisas pequenas antes de se começar o projecto, é começar logo à rei lol vamos lá ver no que isto dá!Entretanto, surgiu-me outra dúvida. Depois de ter andado às voltas com a ImageView e ter descoberto que os gestures para ela são ainda muito rudimentares, decidi exibir a minha imagem numa WebView, ou seja, num .html, já que a WebView trata automaticamente dos gestos, e também seria relativamente mais fácil implementar as áreas clickáveis que já tinha mencionado. Agora estou a tentar aceder pela WebView a um ficheiro local, de preferência que estivesse embutido no projecto (como os drawables) e que não fosse preciso passar esse ficheiro à parte para o cartão sd, por exemplo. Alguém tem ideia como isso se faz? Os tutoriais a que tenho acedido estão ou desactualizados ou errados, já não sei o que faça lol Obrigado pela ajuda já agora!

#5 drjunior

drjunior

    Membro

  • Membros
  • PipPip
  • 62 mensagens

Mensagem publicada 07 October 2010 - 21:12

Informação oficial está sempre actualizada e é sempre o melhor sítio onde encontrar o que pretendemos.Vê como fazeres o que pretendes aqui: http://developer.and...#filesInternalO exemplo de leitura de ficheiro podes adaptar porque é igual à leitura de ficheiros em java.Para teres ficheiros "locais" embutidos na aplicação, podes colocá-los na pasta res/raw/ e depois abrir o ficheiro com o método openRawResource().Aconselho-te a ler o "tip" dado nessa página.