¿Dónde colocar setContentView () en onCreate ()?
Soy un principiante en android y quiero saber por qué es que cuando coloco mi setContentView () después de definir el TextView , mi aplicación se bloquea , es decir
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv=(TextView) findViewById(R.id.tv); Linkify.addLinks(tv, Linkify.WEB_URLS|Linkify.EMAIL_ADDRESSES| Linkify.PHONE_NUMBERS); setContentView(R.layout.activity_main); //After TextView }
Pero cuando pongo mi setContentView () antes de definir el TextView entonces mi aplicación funciona muy bien.
- Carga dibujable desde la tarjeta sd
- IllegalArgumentException: Receptor no registrado: com.google.android.gms.common.api
- Recursos $ NotFoundException al llamar a Robolectric.buildActivity ()
- Android LocalServerSocket
- Cómo cargar imagen a través de matriz de bytes con Glide?
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Before TextView TextView tv=(TextView) findViewById(R.id.tv); Linkify.addLinks(tv, Linkify.WEB_URLS|Linkify.EMAIL_ADDRESSES| Linkify.PHONE_NUMBERS); }
¿Por qué es eso y cómo añadir setContentView () antes hace la diferencia?
- Decodificar códigos de control remoto a través de la entrada de audio
- NullPointerException en findViewById () en android
- Android, cuando debo usar syncronized en un hilo
- Robotium_constructor mensaje obsoleto en el método NotepadTest para super
- ¿Cómo obtener información sobre el toque de RecyclerView?
- Lea el cuerpo de la respuesta en un interceptor de primavera de Android
- ¿Qué hace exactamente la anotación @hide de Android?
- Android.os.NetworkOnMainThreadException para webservice (ksoap)
setContentView()
define literalmente las vistas de su actividad. Si intenta hacer algo como TextView tv=(TextView) findViewById(R.id.tv);
, Entonces no hay ninguna vista para encontrar porque aún no has definido tus vistas y, por lo tanto, tu aplicación se bloquea. Esta es la razón por la que debe poner setContentView()
antes de intentar acceder a sus vistas.
Puede ejecutar cualquier código que desee antes del método setContentView()
siempre y cuando no se refiera a (partes de) la vista, que aún no está configurada.
Dado que la variable tv se refiere al contenido de la vista, no se puede ejecutar.
Cuando está definiendo setContentView () después de que declaró TextView que está haciendo mal porque el objeto Id que está inicializando en TextView está contenido dentro de ese diseño es desconocido en la clase hasta que seConteView () ejecutado.
- No se puede importar la biblioteca volley en eclipse
- No se puede compilar shader conocido por ser bueno en android