В sizes.xml у меня есть:
<dimen name="text_medium">18sp</dimen>
Во время выполнения я получаю это значение и устанавливаю размер текста для текстового представления:
int size = context.getResources().getDimensionPixelSize(R.dimen.text_medium);
textView.setTextSize(size).
На 10-дюймовом планшете (1280 х 800) все нормально; но на телефоне (800 x 480) текстовое представление имеет очень крупный шрифт. На планшете размер равен 18; по телефону 27.
Если я установил размер вручную:
textView.setTextSize(size)
размер нормальный на обоих девайсах.