Есть ли способ увеличить размер шрифта в тосте без настройки?
Я не хочу создавать макет для увеличения размера текста.
Есть ли способ?
Спасибо,
Ники
Есть ли способ увеличить размер шрифта в тосте без настройки?
Я не хочу создавать макет для увеличения размера текста.
Есть ли способ?
Спасибо,
Ники
Я считаю, что это достигается следующим образом:
ViewGroup group = (ViewGroup) toast.getView();
TextView messageTextView = (TextView) group.getChildAt(0);
messageTextView.setTextSize(25);
это...
Toast toast = Toast.makeText(context, R.string.yummyToast, Toast.LENGTH_SHORT);
//the default toast view group is a relativelayout
RelativeLayout toastLayout = (RelativeLayout) toast.getView();
TextView toastTV = (TextView) toastLayout.getChildAt(0);
toastTV.setTextSize(30);
toast.show();
Вы не можете увеличить размер шрифта, не создавая CustomToastView
.
Вот как это сделать с пробелами:
SpannableStringBuilder biggerText = new SpannableStringBuilder(text);
biggerText.setSpan(new RelativeSizeSpan(1.35f), 0, text.length(), 0);
Toast.makeText(context, biggerText, Toast.LENGTH_LONG).show();
Работа от ответа Ani, другое решение, которое позволяет вам установить размер текста в значение размера, будет примерно таким:
public static void showToast(Context context, int resId) {
Toast toast = Toast.makeText(context, resId, Toast.LENGTH_LONG);
LinearLayout toastLayout = (LinearLayout) toast.getView();
TextView toastTV = (TextView) toastLayout.getChildAt(0);
toastTV.setTextSize(TypedValue.COMPLEX_UNIT_PX,
context.getResources().getDimension(R.dimen.TEXT_SIZE));
toast.show();
}
Это позволяет вам сопоставить размер, который вы получаете, чтобы ваши тосты были того же размера, что и в элементах управления TextView и Button.
Вы можете попробовать ввести следующий код в свой манифест:
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"/>
Поместите его над элементом <Application>
.