Establecer el tamaño del texto en .xml o programáticamente

Tengo variable en dimens.xml

<resources>
    <dimen name="btn_text_size">12sp</dimen>    
</resources>

Y puedo usarlo en el archivo de diseño:

 <TextView
           android:textSize="@dimen/btn_text_size"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/dialog_tags_complete"
/>

o programáticamente

tagButton.setTextSize(c.getResources().getDimension(R.dimen.tag_text_size));

Pero estos 2 métodos dan diferentes resultados. Yo sé esogetDimension se basan en los DisplayMetrics actuales asociados con los recursos.

Pero, ¿qué debo hacer para que este 2 maneras se vea igual?

Respuestas a la pregunta(3)

Su respuesta a la pregunta