Autore Topic: Dimensione testo in textView per qualsiasi dispositivo  (Letto 604 volte)

Offline peppino9090

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus 5
  • Sistema operativo:
    Windows 7
Dimensione testo in textView per qualsiasi dispositivo
« il: 30 Marzo 2014, 23:19:40 CEST »
0
Salve a tutti, come scritto in qualche altro post sono un principiante.
Vorrei sapere come è possibile settare dei parametri per rendere le risoluzioni delle textView uguali in qualsiasi dispositivo. Mi spiego meglio, se ad esempio ho una textView che mi riempie completamente lo schermo di un dispositivo da 5 pollici vorrei che lo facesse anche su un 10 pollici. Ho provato a creare il tutto appunto su un display da 4.7, ma quando passo al 10 pollici tutto diventa molto più piccolo(forse direi giustamente)......soluzioni?????

Offline FrancescoAndroid

  • Utente junior
  • **
  • Post: 69
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    GiMiSiS Interactive
  • Sistema operativo:
    Android 2.3.3
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #1 il: 31 Marzo 2014, 16:20:20 CEST »
0
ciao,
devi usare i dp ossia i density point

Supporting Multiple Screens | Android Developers


Offline Noisemaker

  • Utente junior
  • **
  • Post: 58
  • Respect: +1
    • Mostra profilo
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #2 il: 06 Aprile 2014, 17:12:35 CEST »
0
Per il discorso di "riempire tutto" devi dargli come parametro di "width" o "height" il parametro "match_parent".
Se invece vuoi che appaia delle stesse dimensioni (es altra uguale su tutti i dispositivi) devi mettere i valori in "dp" (es. 32dp) che specifica la dimensione in modo indipendente dai pixel dello schermo ;)

Offline peppino9090

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus 5
  • Sistema operativo:
    Windows 7
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #3 il: 06 Aprile 2014, 22:44:58 CEST »
0
Grazie per la risposta, ma non riesco a risolvere..... :-( Ti posto il codice che ho scritto....

Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="10sp"
        android:text="@string/news"
        android:textSize="30dp"
        android:gravity="center"
         />

</LinearLayout>

Nel Grapichal Layout se seleziono, ad esempio, un nexus 5 lo vedo bene come titolo, su un dispositivo da 10 pollici lo vedo piccolo, cioè non mantiene le proporzioni. Ps è vero che l'unità "sp" è come la "dp" ma si usa per il testo?

Offline GabMarioPower

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 606
  • Respect: +152
    • Github
    • Google+
    • gabrielemariotti
    • GabMarioPower
    • Mostra profilo
  • Play Store ID:
    GAB+MARIO+DEV
  • Sistema operativo:
    Ubuntu 14.04 , Win 10
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #4 il: 07 Aprile 2014, 01:34:09 CEST »
0
Per i font size dovresti usare i sp.
Per tutte le altre dimensioni dovresti invece usare i dp.

Offline Noisemaker

  • Utente junior
  • **
  • Post: 58
  • Respect: +1
    • Mostra profilo
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #5 il: 07 Aprile 2014, 10:49:38 CEST »
0
Per i font size dovresti usare i sp.
Per tutte le altre dimensioni dovresti invece usare i dp.
Quoto pienamente :) Nello specifico per il testo devi usare "sp" in quanto tale unità tiene conto non solo dei DPI ma anche delle impostazioni utente per quanto riguarda la dimensione del testo (es. molto grande).
Per il tuo problema inizia come prima cosa ad invertire "dp" e "sp" nel codice :)
Poi ti chiedo una banalità: dove stai provando il tutto? Perchè se è nella schermata di progettazione della GUI (es con eclipse) le cose su un device da 10" appaiono più "piccole" rispetto da 5", perchè essendo il device più grande ma lo spazio della schermata sempre uguale per farcelo stare tutto eclipse scala le cose (a meno che non regoli lo zoom manualmente).
Anche con l'emulatore devi prestare attenzione a impostare le dimensioni in modo che siano "realistiche" diciamo...l'ideale è provarlo su un dispositivo vero se puoi :)

Offline peppino9090

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus 5
  • Sistema operativo:
    Windows 7
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #6 il: 07 Aprile 2014, 13:32:38 CEST »
0
Ti ringrazio per il consiglio,  quindi la migliore soluzione sarebbe testare il tutto su un dispositivo 10 pollici :-)

Offline Noisemaker

  • Utente junior
  • **
  • Post: 58
  • Respect: +1
    • Mostra profilo
Re:Dimensione testo in textView per qualsiasi dispositivo
« Risposta #7 il: 07 Aprile 2014, 18:32:46 CEST »
0
quello sarebbe il top si...
Ma il tablet ti va bene anche in orizzontale? Perchè nel caso un 10" emulato ci riesci a farlo stare su uno schermo del portatile ad esempio :) (se hai schermi grandi anche in verticale ci sta).
Quando lanci l'ADV gli dai "scale to size" e metti 10", stessa cosa per un altro device ad esempio da 5". L'importante è mantenere il rapporto...anche se li scali il rapporto di scalatura deve essere uguale per tutti i device emulati.