Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
#1

Снова про установку шрифта - Программирование Android

16.10.2014, 19:51. Просмотров 873. Ответов 5
Метки нет (Все метки)

Поискал на форуме, но так и не нашел ответа на один вопрос - каким образом можно программно изменить для конкретного приложения выбор размера шрифта в настройках дисплея.
Там идут, как известно, 4 варианта - мелкий, обычный, крупный, огромный. В приложении есть возможность устанавливать собственный размер шрифта в sp. Если пользователь установил в настройках девайса шрифт размером обычный, то все работает отлично. Но если он изменил его, скажем, на крупный, то текст начинает вылезать за пределы экрана.
Поэтому хочу для приложения принудительно устанавливать обычный размер. Как это можно сделать программно? Ну, или, как программно узнать какой размер шрифта выбрал пользователь? Могу просто коэффициентом учесть его при расчете своего размера шрифта.
http://www.cyberforum.ru/android-dev/thread1254235.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2014, 19:51
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Снова про установку шрифта (Программирование Android):

Снова про распознавание речи
Доброго времени суток. Помогите, пожалуйста, разобраться начинающему))) Идея...

Проверить установку пакета
Добрый день всем! Меня интересует такой вопрос, у меня есть приложение и в...

Затирает предыдущую установку приложения
Доброе утро товарищи. Столкнулся с одной особенностью. В принципе в режиме...

Как позволить установку приложения на карту памяти?
Здравствуйте. Возникла необходимость дать возможность переносить программу на...

как нажатием на кнопку запустить установку приложения из папки?
Всем привет :) Вопрос такой - запускаю приложение там есть кнопка "установить...

5
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
18.10.2014, 16:56  [ТС] #2
Так как тема была просмотрена уже 35 раз и нет ни одного ответа, то вероятно я неверно сформулировал вопрос.
Попробую раскрыть тему.
Есть TextView фиксированного размера. В этот вьюв выводится определенное число символов. Число символов предварительно рассчитывается с учетом размера шрифта в приложении, который выбирает пользователь, и плотности PPI конкретного девайса.
В коде размер шрифта выставляю так:
Java
1
MyTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSize);
Если на смартфоне/планшете пользователя установлен обычный размер шрифта, то все отображается нормально. Если, скажем, крупный, то текст не влезает полностью в TextView.
Изучая эту проблему, я выяснил, что следует вместо SP использовать DP. Вроде бы все верно, ведь SP относится к масштабируемому шрифту, а при dp размер зависит только от PPI девайса. В вышеприведенной строке стал использовать COMPLEX_UNIT_DIP вместо COMPLEX_UNIT_SP, но никакого положительного эффекта не получил. При крупном шрифте текст все равно не влезает в поле.
Подскажите, в какую сторону думать
0
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
18.10.2014, 22:11 #3
Устанавливать размер шрифта в dp.
0
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
18.10.2014, 22:55  [ТС] #4
Это понятно. Непонятно как это сделать правильно. В layout вообще не указываю размер шрифта, он задается программно в зависимости от установок пользователя и характеристик его смартфона. Я это расписывал в своем втором сообщении. Но задание размерности шрифта через COMPLEX_UNIT_DIP вместо COMPLEX_UNIT_SP не помогает.
0
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
20.10.2014, 12:07 #5
Лучший ответ Сообщение было отмечено Alexvp как решение

Решение

Можно попробовать в манифесте поставить для активити
XML
1
android:configChanges="fontScale"
не знаю, насколько это удачный ход.
2
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 380
20.10.2014, 16:42  [ТС] #6
Огромное спасибо! Ваша рекомендация помогла!
0
20.10.2014, 16:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2014, 16:42
Привет! Вот еще темы с решениями:

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

Как запретить установку приложения на более ранние версии android?
Свой apk планирую раздавать не только с play.google.com, поэтому фильтровать...

И снова про PopupMenu (было про длину, теперь про ширину)
Добавляем в пустое PopupMenu несколько пунктов динамически (шириной, например,...

Про установку в ХР
Здравствуйте!кто читает ,не ругайтесь ,я не чайник .но Ораклом не занимался.Тут...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru