Autore Topic: Grandezza testi di tutta l'app  (Letto 272 volte)

Offline Blodhgard

  • Utente junior
  • **
  • Post: 53
  • Respect: +3
    • Mostra profilo
    • Budget Veloce
  • Dispositivo Android:
    Nexus 5, S4 mini, Galaxy Tab S
  • Play Store ID:
    blodhgard
  • Sistema operativo:
    Windows 8.1
Grandezza testi di tutta l'app
« il: 21 Settembre 2014, 14:12:11 CEST »
0
Salve,
sono giunto quasi alla fine della mia applicazione ma mi sono accorto di un problema molto fastidioso.
Ho sviluppato l'app su un simulatore/telefono da 5.5 e 4.7 pollici ma quando sono andato a testarla su un dispositivo con display da 4 pollici il testo non era scalato correttamente, sforando a volte.

Negli xml ho usato per le dimensioni
Codice (XML): [Seleziona]
 android:textAppearance="?android:attr/textAppearanceLarge"nelle varie forme small normal e large.

Come posso fare per risolvere il problema? non posso credere che devo andare programmaticamente a cambiare tutte le grandezze in base al display del dispositivo.

Grazie  :D

Offline Aaaaabbbb

  • Utente junior
  • **
  • Post: 55
  • Respect: +3
    • Google+
    • pietmau
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7, Samsung GT-S5830i, LG Optimus, Galaxy Tab 3
  • Play Store ID:
    aaaaaaaaaaaa
  • Sistema operativo:
    Win, Ubuntu
Re:Grandezza testi di tutta l'app
« Risposta #1 il: 21 Settembre 2014, 15:24:39 CEST »
+1
No non è necessario,
devi però creare nel folder res tanti folder "values" quante le dimensioni di cui vuoi tenere conto (puoi testare la varie dimensioni con l'emulatore o con l'editor grafico XML)

Quindi potresti fare:
- res/values-small
- res/values-normal
- res/values-large
- res/values-xlarge
http://developer.android.com/guide/practices/screens_support.html#overview

Oppure potresti usare le dimensioni minime (di solto viene usata la largezza minima),
per esempio:
- res/values-sw320dp
- res/values-sw480dp
- res/values-sw600dp
http://developer.android.com/training/multiscreen/screensizes.html#TaskUseSWQuali


In tutti questi folder definisci un file styles.xml  http://developer.android.com/guide/topics/resources/style-resource.htmll

in tutti i file styles.xml definisci uno stile con lo stesso nome:

<resources>
    <style name="miostile" parent="@android:style/TextAppearance.Small">
    </style>
</resources>

Dove però a seconda della dimensione metti:
- @android:style/TextAppearance.Small
oppure
- @android:style/TextAppearance.Medium
oppure
@android:style/TextAppearance.Large

e nella tua TextView metti:
style="@style/miostile"
e togli
android:textAppearance="?android:attr/textAppearanceLarge"
   

Ciao!!
« Ultima modifica: 21 Settembre 2014, 15:45:25 CEST da Maurizio Pietrantuono »

Offline Blodhgard

  • Utente junior
  • **
  • Post: 53
  • Respect: +3
    • Mostra profilo
    • Budget Veloce
  • Dispositivo Android:
    Nexus 5, S4 mini, Galaxy Tab S
  • Play Store ID:
    blodhgard
  • Sistema operativo:
    Windows 8.1
Re:Grandezza testi di tutta l'app
« Risposta #2 il: 21 Settembre 2014, 16:16:14 CEST »
0
Grazie mille Maurizio  :D
Spiegazione veramente ben fatta! Stasera provo!