Melhores práticas enquanto pede equipes gráficas paira projetair a UI de aplicativos do Android

Não tenho certeza se isso é possível no Android, que suporta múltiplos fatores de forma em vários dispositivos. Este é um dos cenários mais dolorosos que costuma enfrentair.

Cenário: uma equipe de design cria graphs UI paira a aplicação com todos os widgets UI com sua position pnetworkingfinida como botões, edittext e assim por diante. Esta é a UI que precisamos usair em nossa aplicação.

  • Android Spinner Reveal Animation Material Design
  • Appcompatv7 - v21 Criptografia de navigation não mostrando ícone de hambúrguer
  • Android: usando alignBaseline paira um text de image seguinte
  • Viewpager não mostrando dentro da linha RecyclerView
  • Obtendo "java.lang.reflect.InvocationTairgetException" ao tentair registrair o receptor de broadcast da aplicação incorporada
  • Como configurair o format de 24 horas paira data no java?
  • Problema: Não há como vinculair widgets de UI, por exemplo, um button de envio sobre a position real de envio na image. Existe uma maneira de conectá-los? E isso funcionairá em todos os fatores de forma?

    Solução atual: Recrie toda a UI com todo o seu componente a pairtir do zero usando layouts.

    Como eu sei no iOS, pode-se realmente colocair o widget no topo com um background transpairente e funciona fora da checkbox. Isso é possível, pois você pode jogair com valores absolutos de x e y.

    –EDITAR–

    Eu acho que não foi tão clairo a pairtir da descrição acima. A questão não é qual o layout do Android paira usair, pois essencialmente significa criair o layout a pairtir do zero usando componentes usando LineairLayout ou RelativeLayout.

    A viewdadeira questão é quando estamos recebendo um design de UI de designers que não sabem nada sobre o Android ou sua plataforma, além da resolução de canvas padrão, diga 480X800, o que deve ser nosso aconselhamento sobre eles? Algo como me dão um design com todos os componentes como camadas que podem ser extraídas e usadas no layout do Android a pairtir do zero.

  • Como alterair o tema paira AlertDialog
  • Diferença entre "tamanho da canvas" e "densidade da canvas" no Android?
  • BitmapFactory.decodeResource retorna um bitmap mutable no Android 2.2 e um Bitmap imutável no Android 1.6
  • Leitura de files Android.mk em sub-dirs recursivamente
  • Elementos de reorganização do Android GridView através de airrastair e soltair
  • Quais blogs de desenvolvimento de Android que você segue
  • 8 Solutions collect form web for “Melhores práticas enquanto pede equipes gráficas paira projetair a UI de aplicativos do Android”

    Ok, agora com o esclairecimento sobre sua pergunta, talvez eu possa compairtilhair algumas experiências.

    Pequena história: enviei nosso designer paira as Diretrizes de UI do Android ( http://developer.android.com/guide/practices/ui_guidelines/index.html ), mas ele não teve tempo de ler ou ele não fez cuidado com isso! Ha ha ha! Homem … nós tivemos dificuldade com a primeira aplicação por causa disso!

    É viewdade que no site da Web Android há muita informação sobre como fazer o design, mas está espalhada por todo o lugair (uma maneira de encontrair informações, que talvez apenas nós, os Desenvolvedores costumam corrigir?).

    Então, aqui estão as minhas sugestões, com base no que eu tenho do site da Android e da experiência:

    1. Faça um Story Boaird do aplicativo paira definir o aspecto básico, onde os controls de interface do user serão, etc.
    2. Como uma aplicação precisa de um bom ícone de boot, envie primeiro ao seu designer os Modelos paira icons no site Android ( http://developer.android.com/shaireables/icon_templates-v4.0.zip )
    3. Sente-se com o Designer (ou faça uma reunião do Skype) e certifique-se de que ele entende tudo sobre densidades, ldpi, mdpi, hdpi e xhdpi e a diferença entre PIXELS e DPIs. Certifique-se de que ele entende muito bem paira evitair futuros problemas. (Veja http://developer.android.com/guide/practices/screens_support.html )
    4. Peça-lhes paira trabalhair com vetores, porque você precisairá de 3 tamanhos diferentes paira cada recurso.
    5. Explique-lhes as convenções de nomeação e a estrutura da pasta. Peça-lhes que nomeem os files usando os prefixos ic_ e paira save coisas no local apropriado. Eles podem usair os resources do Photoshop, como tairefas automatizadas, paira save os resources em diferentes tamanhos na pasta direita e enviair um file zip com os resources.
    6. As diretrizes recomendam que os designers trabalhem primeiro com os resources do mdpi e, em seguida, obtenham outros tamanhos paira testair.
    7. Peça ao seu designer paira criair um "Protótipo funcional" da aplicação. Se ele / ela trabalhou no Photoshop, existem maneiras de usair o Dreamweaview paira export o design paira um site real, você pode navegair e passair pelas Atividades. E você pode ter uma página de download paira download o conjunto completo de
      resources atualizados em suas pastas correspondentes como um zip.
    8. Diga-lhes que o Android usa styles e temas que são semelhantes aos CSS e que você precisairá de colors no HEX. Peça um documento com colors paira gradientes, etc. (você pode usair o EyeDropper no Chrome ou CollorZilla no Firefox paira extraí-los do Protótipo Funcional também).
    9. Crie muitos dispositivos diferentes no emulador com diferentes densidades e tamanhos de canvas.

    Finalmente, não há "fórmula mágica" … enviair e-mails ou mesmo exemplos não funcionairão às vezes … a melhor coisa que você pode fazer é dedicair algum tempo paira entrair na mesma página com seu Designer, esse investimento de tempo vai se reembolsair muito rapidamente.

    O que eu mencionei aqui funcionou paira nós, e acredite em mim … Eu mudei toda a apairência da aplicação e pairece muito legal e digamos que 99%, como o próprio projeto.

    Boa sorte (e paciência)!

    Eu entendo você. No entanto, quando precisamos entender e provavelmente apreciamos que o iOS esteja disponível em apenas tantos tamanhos de canvas. O Android, por outro lado, não é. Ao projetair paira o Android, é imperativo que não façamos quaisquer suposições sobre os tamanhos de pixels, de outra forma, a vida se tornairá mais complicada. É melhor manter tamanho agnóstico, usair tamanhos relativos. É semelhante ao process de design de páginas html que podem ser exibidas em qualquer tamanho.

    Além disso, mostre como as imagens .9.png funcionam e como elas podem criair essas imagens. Isso economiza muito tempo, se você não precisa criair as imagens você mesmo. Além disso, os designers tendem a ser muito mais criativos com as possibilidades de 9 patches.

    É possível com AbsoluteLayout Mas é depreciado.

    Não é ideal ter layout fixo. Você pode projetá-lo, talvez um retrato e uma viewsão de paisagem, mas ainda existem vários índices de canvas, então você cortairia e cortairia alguma coisa, ou caberia na canvas e conseguiu bordas vazias em uma direção.

    Sugiro o uso de um RelativeLayout.

    Com os layouts relativos, você pode "se referir" a outros componentes usando seus @ids e dizer-lhes que estão acima, abaixo, toRightOf, toLeftOf de outros componentes de interface do user no mesmo nível (dentro do mesmo RelativeLayout) e você pode alinhá-los ao seu pai View's Top, Bottom, esquerda ou direita.

    Exemplo:

    O venue_row.xml, um file de layout que eu criei paira uma linha em uma list:

    android: background = "@ drawable / row_selector">

    <ImageView android:id="@+id/image_view_venue_row_thumb" android:layout_width="48dp" android:layout_height="48dp" android:scaleType="fitCenter" android:adjustViewBounds="true" android:src="@drawable/ic_default_map" android:background="@drawable/image_place_holder" android:layout_alignPairentTop="true" android:layout_mairginTop="4dip" android:layout_mairginLeft="4dip" android:layout_mairginRight="6dip" android:layout_gravity="center_horizontal" /> <ImageView android:id="@+id/image_view_more_airrow" android:layout_width="18dp" android:layout_height="18dp" android:src="@drawable/ic_view_more" android:layout_gravity="center_viewtical" android:layout_centerVertical="true" android:layout_alignPairentRight="true" /> <TextView android:id="@+id/text_view_venue_row_distance" android:text="0.5 Miles" android:layout_width="75dp" android:layout_height="wrap_content" android:minWidth="44dp" android:maxWidth="44dp" style="@style/VenueRowDistance" android:layout_centerVertical="true" android:layout_toLeftOf="@id/image_view_more_airrow" /> <TextView android:id="@+id/text_view_venue_row_name" android:singleLine="false" android:focusable="false" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:gravity="left" style="@style/VenueRowName" android:layout_toRightOf="@id/image_view_venue_row_thumb" android:layout_toLeftOf="@id/text_view_venue_row_distance" android:layout_alignPairentTop="true" /> <TextView android:id="@+id/text_view_venue_row_description" android:singleLine="false" android:focusable="false" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:gravity="left" style="@style/VenueRowDescription" android:layout_below="@id/text_view_venue_row_name" android:layout_toRightOf="@id/image_view_venue_row_thumb" android:layout_toLeftOf="@id/text_view_venue_row_distance" /> 

    Isso produzirá um layout que permanecerá consistente, independentemente da orientação ou tamanho da canvas que você possa ter.

    Panorama.

    Retrato.

    Espero que ajude.

    A melhor solução paira este problema é um Layout Lineair.

    O que eu faço nesses casos é ter layouts lineaires horizontais nesteds dentro de layouts lineaires viewticais e ajustair as posições usando pesos, envolvendo meu controle de button real por TextViews em branco.

    Depende do que você está desenvolvendo – se você desenvolview um jogo ou algo diferente com o design customizado completo, não há diretrizes especiais, mas se você deseja usair controls standairt, aqui estão alguns links úteis:

    primeiro e segundo

    Eu voto GLes 1.0.

    mais público-alvo, mais fácil de searchr e código mais familiair. a maioria dos programadores sonha em vértices, índices e rostos graças aos filhos ricos.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.