Cómo configurar dinámicamente el tamaño de fuente en Android
TextView mName = (TextView)findViewById(R.id.name);
mName.setTextSize(22); /p >
Comience a aprender Android y configure el tamaño de fuente, que no es más que usar el código anterior. Android ha escrito demasiado y quiere leer el valor 22 establecido en dimensiones. Es simple, a continuación está el código. cto.com
//definición en XML
//da una identificación para el nombre TextView establece el tamaño de fuente
TextView mName = (TextView)findViewById(R.id.name);
mName.setTextSize(TypedValue.COMPLEX_UNIT_PX,
getResources().getDimensionPixelSize(R.dimen. my_text_size)));
A veces, cuando usas un método, no miras la unidad, solo conoces el tipo. De hecho, el método setTextSize() está escrito muy claramente. método, la unidad está escalando píxeles, es decir, sp, no px (píxeles). En otras palabras, es la misma unidad que
[Java]
setTextSize(TypedValue.COMPLEX_UNIT_PX,22); //22 píxeles
setTextSize(TypedValue.COMPLEX_UNIT_SP,22); /22SP
setTextSize(TypedValue.COMPLEX_UNIT_DX,22); //22SPCOMPLEX_UNIT_DIP,22); //22DIP
El método getDimensionPixelSize() devuelve el valor del píxel, por lo que mName.setTextSize( Valorescrito. COMPLEX_UNIT_PIP,22); //22DIP. COMPLEX_UNIT_PX,
getResources().getDimensionPixelSize(R.dimen.my_text_size));
Al principio, escribí mName.setTextSize(getResources().getDimensionPixelSize(R.dimen.my_text_size));; como resultado, se produjo un error grave. Como se mencionó anteriormente, setTextSize utiliza de forma predeterminada unidades SP. pero pasé La entrada es un valor de píxel y el resultado es que la fuente se vuelve inusualmente grande.