Android: получить / получить идентификатор заголовка progressDialog и идентификатор заголовка DialegError - PullRequest
1 голос
/ 02 апреля 2012

Я должен изменить шрифты моего проекта на внешние, и я сделал это почти везде, теперь только в нем отсутствуют заголовки ProgressDialog и ErrorDialeg (тело также изменено).

Итак, что я делаю в обоих случаях (прокомментированное текстовое представление из-за исключения):

        String msg1 = "one", msg2 = "two";

        progressDialog = ProgressDialog.show(activity, msg1, msg2, true);
        Typeface font=Typeface.createFromAsset(activity.getAssets(),"fonts/rockwell.ttf");

        TextView text = (TextView)progressDialog.findViewById(android.R.id.message);
        text.setTypeface(font);

        //text = (TextView)progressDialog.findViewById(android.R.id.title);
        text.setTypeface(font);

и

    ..........
    AlertDialog dialog = new AlertDialog.Builder(a)
        .setTitle( titol )
        .setMessage( cos )
    ..........
        .show();

     //Establir el canvi de font a la personalitzada.
     Typeface font=Typeface.createFromAsset(a.getAssets(),"fonts/rockwell.ttf");
     TextView textView = (TextView)dialog.findViewById(android.R.id.message);
     textView.setTypeface(font);
     //textView =  (TextView)dialog.findViewById(android.R.id.title);
     textView.setTypeface(font);
     textView =  (TextView)dialog.findViewById(android.R.id.button1);
     textView.setTypeface(font);

Я перепробовал все возможные варианты (не только «R.id.title»), и у меня были только исключения, пытавшиеся получить TITLE TextView в обоих случаях. Это последнее, что мне нужно, чтобы изменить шрифты всего проекта. Если кто-нибудь знает, где взять название ... заранее спасибо.

1 Ответ

7 голосов
/ 22 июля 2013

для AlertDialog Попробуйте это:

((TextView) dialog.findViewById(getResources().getIdentifier(
            "alertTitle", "id", "android"))).setTypeface(myRegularFont);

И для кнопки AlertDialog TypeFace:

((Button) dialog.getButton(AlertDialog.BUTTON_POSITIVE))
            .setTypeface(myBoldFont);

для ProgressDialog Попробуйте это:

((TextView) prWait.findViewById(getResources().getIdentifier(
                "alertTitle", "id", "android"))).setTypeface(myRegularFont);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...