Autore Topic: custom font in style  (Letto 699 volte)

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
custom font in style
« il: 02 Agosto 2011, 10:33:45 CEST »
0
Salve è possibile creare uno style con la personalizzazione del font senza usare la classica


Codice (Java): [Seleziona]
Typeface tf = Typeface.createFromAsset(getAssets(),"miofont);
TextView tv = (TextView) findViewById(R.id.txt);
tv.setTypeface(tf);


Codice (XML): [Seleziona]
<style name="CustomFont" parent="@android:style/Widget.TextView">
                <item name="android:typeface">serif</item>
                <item name="android:textSize">12dip</item>
        </style>

Si ok potrei estedere TextView e creare un componente ma non sarebbe male come nei css poter personalizzare il font anche dagli style
La domanda stupida è quella che non si fa

Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:custom font in style
« Risposta #1 il: 02 Agosto 2011, 10:43:30 CEST »
0
Ciao,
non credo sia fattibile se non da codice. Vediamo quanto tempo passa prima di essere smentito  :-).
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
Re:custom font in style
« Risposta #2 il: 02 Agosto 2011, 10:46:57 CEST »
0
Si hai ragione la classe TypeFace è statica...pensavo di poter aggiungere un font alla classe o estendere o una cosa simile...

cmq l' unica possibilità è creare un componente...


Vado fuori tema di questo post... ma in Eclipse ADT è possibile collegare i progetti? se io ho un progetto con numerose classi , devo creare per forza un jar o una libreria...
La domanda stupida è quella che non si fa

Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:custom font in style
« Risposta #3 il: 02 Agosto 2011, 10:56:42 CEST »
0
Collegare progetti in che senso? In modo di utilizzare le classi di un progetto A da un progetto B? Se così in teoria basta aggiungere il progetto A al progetto B. Da Eclipse tasto destro sul progetto B, Properties,  Java Build Path, selezionare tab Projects, Add. Non so se intendevi questo...
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
Re:custom font in style
« Risposta #4 il: 02 Agosto 2011, 11:16:46 CEST »
0
si hai ragione non ci avevo pensato.. utilizzo Eclipse con altri plugin e la modalità è diversa...

grazie.
La domanda stupida è quella che non si fa

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
Re:custom font in style
« Risposta #5 il: 02 Agosto 2011, 11:22:05 CEST »
0
Cmq non mi funziona con il componente mi da errore.

in assets ho messo un font di nome arc.ttf


Codice (Java): [Seleziona]
package it..example.fontstyle;

import android.content.Context;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.util.Log;
import android.widget.TextView;

public class CustomTextView extends TextView {

    public CustomTextView(Context context) {
            super(context);
           setFont(context);

    }

    public CustomTextView(Context context, AttributeSet attributeSet) {
            super(context, attributeSet);
            setFont(context);
    }
   
    private void setFont(Context context) {
        try {
                 Typeface tf = Typeface.createFromAsset(context.getAssets(), "assets/arc.ttf");
                 setTypeface(tf);
                } catch (Exception e) {        
                       
                        Log.e("DEBUG", "errore: "+ e.getMessage());
                }              
           
    }
}

main.xml

Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   >
<TextView  
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:text="@string/hello"
   android:id="@+id/testo"
   />
   
    <it.example.fontstyle.CustomTextView  
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:text="@string/hello"
   android:id="@+id/testo2"
   />
   </LinearLayout>

Nell' Activity ho messo

Codice (Java): [Seleziona]
 CustomTextView mytext= (CustomTextView) findViewById(R.id.testo2);
  mytext.setText("Prova font2");


Se cancello

 Typeface tf = Typeface.createFromAsset(context.getAssets(), "assets/arc.ttf");
   setTypeface(tf);

non mi da errore ma ovviamente non cambia il font invece se lo lascio mi da errore il LogCat mi da

08-02 10:49:51.765: INFO/DEBUG(13752): errore: native typeface cannot be made


Dove sbaglio?





La domanda stupida è quella che non si fa

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
Re:custom font in style
« Risposta #6 il: 02 Agosto 2011, 11:26:01 CEST »
0
Ok scusate ho visto bene.. ho aggiunto la cartella assets e non ci va.
La domanda stupida è quella che non si fa