Вопрос по android, java – Изменение шрифта в AlertDialog

5

Может кто-нибудь предложить способ изменить шрифт в динамически создаваемом AlertDialog (в заголовке и теле)? Я пытался разными способами, но ни один из них не работал. Код является:

public void onClick(View v) {

    new AlertDialog.Builder( c )
    .setTitle( data.eqselect )
    //  .set 
    .setIcon(R.drawable.icon)
    .setMessage(Threads.myData[0] )
    .setNegativeButton( "Close", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            Log.d( "AlertDialog", "Negative" );
        }
    } )
    .show();
}

Ваш Ответ

1   ответ
10

Вместо того, чтобы устанавливать текст модуля alerttdialog, вы должны установить собственный вид из ваших макетов. И прежде чем сделать это, измените шрифт вашего представления.

TextView mycontent = (TextView) findViewById(R.id.yourid);
         mycontent.setTypeface(Typeface.createFromAsset(getAssets(), "font.ttf")

И чтобы установить вид вашего диалогового окна предупреждения, позвоните.setView(mycontent) вместоsetMessage() Хотя это не меняет вашего названия, насколько я знаю.

Update Я вижу, что вы не можете понять, что я говорю, поэтому вот полный пример.

TextView content = new TextView(this);
         content.setText("on another font");
         content.setTypeface(Typeface.SANS_SERIF);

//Use the first example, if your using a xml generated view

     AlertDialog.Builder myalert = new AlertDialog.Builder(this);
         myalert.setTitle("Your title");
         myalert.setView(content);
         myalert.setNeutralButton("Close dialog", null);
         myalert.setCancelable(true);
         myalert.show();

Это использует TextView, который мы только что создали, и у него не будет полей или чего-то подобного. Если вы используете только что созданную форму для файлов макета, вы сможете настроить все эти параметры, хотя вы можете сделать это для этого примера в коде.

Конечно, замените шрифт на тот, который вы хотите .. Пример TextView из xml может быть:

<TextView
        android:id="@+id/yourid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="8dp"
        android:text="your content" />
Error: User Rate Limit Exceeded Laurynas G
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Laurynas G
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Laurynas G

Похожие вопросы