Autore Topic: come settare un colore personalizzato in un testo ?  (Letto 475 volte)

Offline paulucc95

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung galaxy S Advance
  • Sistema operativo:
    Windows 7
come settare un colore personalizzato in un testo ?
« il: 08 Aprile 2014, 17:55:27 CEST »
0
Ciao ragazzi in merito ad un problema che riguarda la formattazione del testo , ovvero posso impostare solo i colori in html , se volessi creare un colore personalizzato con shape , sarebbe possibile?
Per il font family invece non posso per esempio impostare il tipi aerials .
Grazie per le eventuali risposte

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:come settare un colore personalizzato in un testo ?
« Risposta #1 il: 08 Aprile 2014, 20:23:38 CEST »
+1
Non ho ben capito cosa intendi quando parli di colori in html o con shape...cmq per settare un colore su una textView

Codice (Java): [Seleziona]
<TextView
   android:textColor="#000000"/>

dove puoi impostare qualsiasi colore in formato
#RGB
#ARGB
#RRGGBB
#AARRGGBB

Se vuoi essere più fine puoi referenziare un color:

Codice (Java): [Seleziona]
<TextView
   android:textColor="@color/mycolor"/>

e poi dichiarare in colors.xml il tuo colore.
Codice (Java): [Seleziona]
<resources>
   <color name="mycolor">#f000000</color>
</resources>

Per il font-family:
Codice (Java): [Seleziona]
<TextView
    android:fontFamily="xxxx"
 />

Possibili valori sono:
Codice (Java): [Seleziona]
android:fontFamily="sans-serif"              // roboto regular for 4.1+
android:fontFamily="sans-serif-light"     // roboto light for 4.1+
android:fontFamily="sans-serif-condensed" // roboto condensed for 4.1+
android:fontFamily="sans-serif-thin"      // roboto thin for 4.2+

Se vuoi un font personalizzato, devi copiare il font (.ttf) nella cartella assets e usare questo codice:

Codice (Java): [Seleziona]
TextView tv = (TextView) findViewById(R.id.mytv);
Typeface face = Typeface.createFromAsset(getAssets(),"your ttf");
tv.setTypeface(face);

o in alternativa estendere la classe TextView.
Codice (Java): [Seleziona]
public class MyTextView extends TextView {
    public MyTextView(Context context, AttributeSet attrs) {
        super(context, attrs);      
        this.setTypeface(Typeface.createFromAsset(context.getAssets(), "myfont.ttf"));
    }
}

Offline paulucc95

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung galaxy S Advance
  • Sistema operativo:
    Windows 7
Re:come settare un colore personalizzato in un testo ?
« Risposta #2 il: 09 Aprile 2014, 15:10:22 CEST »
0
problemGrazie per la risposta , quindi se vorrei personalizzare un font family , per esempio vorrei al posto del times new roman un "aerial" , come dovrei fare?

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:come settare un colore personalizzato in un testo ?
« Risposta #3 il: 09 Aprile 2014, 15:30:28 CEST »
0
problemGrazie per la risposta , quindi se vorrei volessi personalizzare un font family , per esempio vorrei al posto del times new roman un "aerial" , come dovrei fare?

Esattamente il codice che ti ho scritto sopra.

Offline paulucc95

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung galaxy S Advance
  • Sistema operativo:
    Windows 7
Re:come settare un colore personalizzato in un testo ?
« Risposta #4 il: 09 Aprile 2014, 16:00:59 CEST »
0
Esattamente il codice che ti ho scritto sopra.

Questo è ciò che ho scritto

               TextView text=(TextView)findViewById(R.id.textView2);
      Typeface face=Typeface.createFromAsset(getAssets(),"aerial.ttf" );
      text.setTypeface(face);

Cosa c'è che non va , ho scaricato in font aerial in formato .ttf e lo copiato nella cartella assets