TextView: configurar el tamaño de texto mediante programación no parece funcionar

Estoy usando Eclipse Indigo, probando en 2 emuladores (2.2 y 3.0).

El código de abajo muestra lo que estoy probando ahora, sin embargo el ajuste del tamaño del texto no revela nada en la pantalla cuando se intenta ejecutar el emulador (si comento el tamaño del texto aparece con un color rojo). Pensé que de alguna manera eclipse no era la reconstrucción del código, pero he añadido la línea de código para agregar el fondo azul y que funcionó. He intentado fijar el tamaño del texto después de fijar el texto con todavía no éxito. El código está abajo. ¡gracias por tu ayuda! (Renuncia) – estoy intentando permanecer lejos de xml. Siendo que ya conozco java no quiero depender de eso.

import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.widget.TextView; public class TestAndroidvs2Activity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView text = new TextView(this); text.setTextColor(Color.RED); text.setTextSize(2); text.setBackgroundColor(Color.BLUE); text.setText("Hello Android"); setContentView(text); } } 

El tamaño del texto 2 será prácticamente invisible. Pruébalo con 14 al menos. BTW, utilizando xml tiene muchas ventajas y le hará la vida más fácil una vez que usted necesita hacer algo más complejo que 'Hello World'.

El método TextView.setTextSize(int unit , int size); Toma dos parámetros.

Prueba esto :

 text.setTextSize(TypedValue.COMPLEX_UNIT_SP,14); 

Referir esto y esto .

Esto arregló el problema para mí. Tengo el tamaño de fuente uniforme en todos los dispositivos.

  textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,getResources().getDimension(R.dimen.font)); 

Consulte este enlace para obtener más información sobre cómo configurar el tamaño del texto en el código. Básicamente dice:

Public void setTextSize (unidad int, tamaño float)

Desde: Nivel de API 1 Establezca el tamaño de texto predeterminado en una unidad y un valor dados. Vea TypedValue para las posibles unidades de dimensión. Atributos XML relacionados

Android: textSize Parámetros

Unidad La unidad de medida deseada.
Tamaño El tamaño deseado en las unidades dadas.

En mi caso Utilizado este método :

 public static float pxFromDp(float dp, Context mContext) { return dp * mContext.getResources().getDisplayMetrics().density; } 

Aquí se establece TextSize de TextView programaticamente :

 textView.setTextSize(pxFromDp(18, YourActivity.this)); 

Sigue disfrutando:)

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.