Android textview – no puedo conseguir que va

Hola, estoy tratando de construir mi primer proyecto android. Soy quiete un buen programador, para microcontroladores, php, bash etc.

Sin embargo, esta sintaxis Java está haciendo querer explotar.

package com.example.test; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.TextView; public class MainActivity extends Activity { TextView tv1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } TextView tv1 = (TextView) findViewById(R.id.textView1); tv1.setText("Text2"); } 

y

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:editable = "true" /> 

He comprobado muchos ejemplos en la web, pero parece que no puedo hacerlo.

tv1.setText("Text2"); Siempre aparece como error de sintaxis.

¿Dónde estoy cometiendo un error aquí?

Cambiar a

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // initialize after setContentView tv1 = (TextView) findViewById(R.id.textView1); tv1.setText("Text2"); // should be within a method } 

Cuando codifica en Java, cada línea de código debe estar dentro de un método (excepto para declaraciones de variables). El código cuando desea inicializar su TextView no está dentro de un método que causa el error.

Cambie su código a:

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView tv1 = (TextView) findViewById(R.id.textView1); tv1.setText("Text2"); } 

Esto hace que la inicialización de su TextView se haga dentro del método onCreate que es el método que se llama cuando se crea la vista.

Si desea utilizar TextView más adelante, mueva también la declaración de variables de tv1 fuera del método.

 private TextView tv1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv1 = (TextView) findViewById(R.id.textView1); tv1.setText("Text2"); } 

Esto es porque usted está colocando

 TextView tv1 = (TextView) findViewById(R.id.textView1); tv1.setText("Text2"); 

Fuera de cualquier método de la clase MainActivity. Simplemente coloque las 2 líneas dentro de método onCreate (), después de setContentView ().

  • Cómo cambiar el estilo de un TextView en tiempo de ejecución
  • Android: ¿Cómo usar el Html.TagHandler?
  • Android - Configuración de TextView a negrita no funciona
  • Restablecer Android textview maxlines
  • Android: ¿define TextView TextStyle mediante programación?
  • Android dibujar círculo alrededor de texto
  • Ocultar TextView después de algún tiempo en Android
  • ¿Cómo mover una Textview dinámicamente en la pantalla? (Framelayout)
  • Pellizcar Zoom en el texto de vista Android
  • El texto de TextView desaparece cuando se gira el dispositivo
  • Vista lateral con XML Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.