Autore Topic: Visualizzazione app su diversi dispositivi  (Letto 614 volte)

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Visualizzazione app su diversi dispositivi
« il: 07 Giugno 2015, 13:00:18 CEST »
0
Salve amici, mi sta venendo un dubbio riguardante la mia app. In pratica io l'ho realizzata emulandola sul mio s4 e tutto va bene .
Stamattina ho deciso di provare l'emulatore di android studio (Nexus s) e nel momento in cui ho avviato l'app mi sono reso conto che delle stringhe erano sovrapposte ai bottoni, nella listview le stringhe erano troppo grandi e quindi il testo veniva tagliato.
Volevo chiedervi se realmente poi sul nexus s verrà visualizzata così e se si come fare per rendere il layout uguale e corretto per tutti i device che poi la scaricheranno.
Grazie in anticipo per la risposta.

Offline tonno16

  • Utente storico
  • *****
  • Post: 1228
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Visualizzazione app su diversi dispositivi
« Risposta #1 il: 07 Giugno 2015, 19:43:50 CEST »
0
Verrà cosi sicuramente.

Devi usare DP e non in pixel. Devi avere immagini in tutte e 4 le cartelle drawable.

USA autoresizetextview come libreria se vuoi

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:Visualizzazione app su diversi dispositivi
« Risposta #2 il: 10 Giugno 2015, 23:05:23 CEST »
0
Scusa cosa è questa libreria? C'è qualche tutorial a riguardo?

Offline tonno16

  • Utente storico
  • *****
  • Post: 1228
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Visualizzazione app su diversi dispositivi
« Risposta #3 il: 10 Giugno 2015, 23:24:43 CEST »
0
Nella stessa libreria. È su github. È in inglese ovviamente

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:Visualizzazione app su diversi dispositivi
« Risposta #4 il: 11 Giugno 2015, 00:12:55 CEST »
0
Scusa ma non c'è un metodo più semplice? Ad esempio a me sorge il problema con i bottoni che sull's4 si vedono in basso e se invece installo l' app su note 3 si vedono più in alto

Offline tonno16

  • Utente storico
  • *****
  • Post: 1228
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Visualizzazione app su diversi dispositivi
« Risposta #5 il: 11 Giugno 2015, 00:41:33 CEST »
0
Ogni schermo ha la sua risoluzione.
Se tu metti margintop 20px magari sul note 3 si vede un margine e su nexus 6 che ha il doppio di risoluzione ti si vede in un altro modo.
Potresti usare i DP come detto prima. Inoltre la libreria linkata è veramente di facile utilizzo. È una normale textview con un po di "cervello"

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:Visualizzazione app su diversi dispositivi
« Risposta #6 il: 11 Giugno 2015, 00:46:12 CEST »
0
Ok provo a vedere... Mi puoi linkare il link per piacere?

Offline arlabs

  • Utente normale
  • ***
  • Post: 434
  • Respect: +49
    • Mostra profilo
  • Dispositivo Android:
    GalaxyS6, Nexus5
  • Play Store ID:
    AR Labs
  • Sistema operativo:
    Windows 10
Re:Visualizzazione app su diversi dispositivi
« Risposta #7 il: 11 Giugno 2015, 09:42:37 CEST »
+1
In AndroidStudio c'è una voce che si chiama "Preview All Screen Sizes". Ti può essere d'aiuto per vedere a colpo d'occhio come si comporta il tuo Layout su diversi dispositivi.

Cmq, per imparare a fare layout che si adattano bene limita l'uso delle Size "definite in dp", usa il più possibile "wrap_content", "match_parent" e "fill_parent"
E definisci le risorse in tutte le risoluzioni possibili.
Poi il resto è questione di provare, guardare ed imparare...

Ciao.

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:Visualizzazione app su diversi dispositivi
« Risposta #8 il: 11 Giugno 2015, 15:44:00 CEST »
0
In AndroidStudio c'è una voce che si chiama "Preview All Screen Sizes". Ti può essere d'aiuto per vedere a colpo d'occhio come si comporta il tuo Layout su diversi dispositivi.

Cmq, per imparare a fare layout che si adattano bene limita l'uso delle Size "definite in dp", usa il più possibile "wrap_content", "match_parent" e "fill_parent"
E definisci le risorse in tutte le risoluzioni possibili.
Poi il resto è questione di provare, guardare ed imparare...

Ciao.


Scusa aariabs...io per esempio nell'activity ho una textView e due bottoni sotto, Sull's4 si vede in maniera perfetta invece se lo provo con un dispositivo più piccolo i bottoni si trovano di poco accavallati alla textView.
Questo è il layout, io cosa dovrei cambiare fondamentalmente?


Codice (XML): [Seleziona]
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:background="#000000" >

    <TextView
       android:id="@+id/mese"
       android:layout_width="wrap_content"
       android:layout_height="113dp"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:textStyle="bold|italic"
       android:textColor="#FFFFFF"
       android:background="#009933"
       android:textSize="40dp"
       android:gravity="center"/>

    <TextView
       android:id="@+id/info"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_marginTop="80dp"
       android:textColor="#FFFFFF"
       android:textSize="20dp"
       android:layout_below="@+id/mese"
       android:layout_alignParentLeft="true"
       android:layout_alignParentStart="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentEnd="true" />

    <Button
       android:id="@+id/pomeridiano"
       android:layout_width="wrap_content"
       android:layout_height="60dp"
       android:textColor="#009933"
       android:text="Servizio pomeridiano e festivo"
       android:textSize="20dp"
       android:layout_above="@+id/notturno"
       android:layout_alignParentLeft="true"
       android:layout_alignParentStart="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentEnd="true" />

    <Button
       android:id="@+id/notturno"
       android:layout_width="wrap_content"
       android:layout_height="60dp"
       android:textColor="#009933"
       android:text="Servizio notturno"
       android:textSize="20dp"
       android:layout_alignParentBottom="true"
       android:layout_alignParentLeft="true"
       android:layout_alignParentStart="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentEnd="true" />


</RelativeLayout>

Offline arlabs

  • Utente normale
  • ***
  • Post: 434
  • Respect: +49
    • Mostra profilo
  • Dispositivo Android:
    GalaxyS6, Nexus5
  • Play Store ID:
    AR Labs
  • Sistema operativo:
    Windows 10
Re:Visualizzazione app su diversi dispositivi
« Risposta #9 il: 11 Giugno 2015, 18:02:02 CEST »
+1
Il problema è che hai i pulsanti "sovrapposti" alla text view. Anche sull S4, solo che il testo che ci metti non andrà a riempirla tutta.
Prova ad aggiungere:

Codice (XML): [Seleziona]
 android:layout_above="@+id/pomeridiano"
alla textview info.

Questo perché hai un RelativeLayout. Per un layout così semplice avresti anche potuto usare un LinearLayout.

Ciao.