2012-10-24 15 views

risposta

61

Per fare questo si utilizzano builder avviso per costruire il vostro avviso. Quindi si ottiene TextView da questo avviso e quindi si imposta il carattere tipografico per l'avviso.

AlertDialog dialog = new AlertDialog.Builder(this).setMessage("Hello world").show(); 
TextView textView = (TextView) dialog.findViewById(android.R.id.message); 
Typeface face=Typeface.createFromAsset(getAssets(),"fonts/FONT"); 
textView.setTypeface(face); 
+0

Grazie mikeswright49. Funziona alla grande. Mi hai salvato il tempo. – IndieBoy

+2

Va bene, ricordati di approvare e upvotare una volta ottenuti i privilegi in modo che anche altre persone possano ottenere questo aiuto. – mikeswright49

+0

Stavo provando a fare ma il codice ur è davvero sorprendente :) grazie mille – Gattsu

2

È possibile definire il proprio layout della finestra di dialogo che si desidera visualizzare.

Ecco un link per questo

Creating a custom dialog in Android

nel layout è possibile definire TextViews con il carattere che si desidera. Devi scaricare i file otf per il font che vuoi. Li hai nelle tue directory degli asset. E impostalo come TypeFace del tuo TextView. E come impostare TypeFace

Ciò può essere utile il lavoro

How to change the font on the TextView?

+0

Ho avuto la mia risposta nell'ultimo post di mikeswright49. ma grazie per la tua attenzione – IndieBoy

6

Le risposte di cui sopra non ha ancora per me.

ho usato il seguente approccio

// Initializing the alertDialog 
AlertDialog alertDialog = new AlertDialog.Builder(QuizActivity.this).create(); 
alertDialog.setTitle("Warning"); 
alertDialog.setMessage("Are you sure you want to exit?"); 
alertDialog.show(); // This should be called before looking up for elements 


// Getting the view elements 
TextView textView = (TextView) alertDialog.getWindow().findViewById(android.R.id.message); 
TextView alertTitle = (TextView) alertDialog.getWindow().findViewById(R.id.alertTitle); 
Button button1 = (Button) alertDialog.getWindow().findViewById(android.R.id.button1); 
Button button2 = (Button) alertDialog.getWindow().findViewById(android.R.id.button2); 

// Setting font 
textView.setTypeface(FontHelper.getFont(Fonts.MULI_REGULAR)); 
alertTitle.setTypeface(FontHelper.getFont(Fonts.MULI_REGULAR)); 
button1.setTypeface(FontHelper.getFont(Fonts.MULI_BOLD)); 
button2.setTypeface(FontHelper.getFont(Fonts.MULI_BOLD)); 

Testato su 7.1.1

NOTA: Assicuratevi di avere l'elemento dopo aver mostrato il dialog. Senza questo si otterrà NullPointerException

0

Personalizzare l'avviso TextView titolo della finestra

   TextView tv_message = new TextView(this); 

      Typeface typeface = Typeface.createFromAsset(
        getAssets(), 
        "fonts/OpenSans-Semibold.ttf" 
      ); 


      // Set the text view layout parameters 
      tv_message.setLayoutParams(
        new 
     ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 
     ViewGroup.LayoutParams.WRAP_CONTENT) 
      ); 

      // Set message text color 
      tv_message.setTextColor(Color.RED); 

      // Set message gravity/text align 
      tv_message.setGravity(Gravity.START); 

      // Set message text size 
      tv_message.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16); 

      // Set message custom font 
      tv_message.setTypeface(typeface); 

      // Set message background color 
      tv_message.setBackgroundColor(Color.YELLOW); 

      // Set message text padding 
      tv_message.setPadding(15, 25, 15, 15); 

      tv_message.setText("Are you sure?"); 
      tv_message.setTextColor(Color.BLACK); 
Problemi correlati