2010-06-07 14 views
5

Parece que tengo problemas con el enlace que estoy usando en mi Adaptador personalizado. Por alguna razón que recibo la siguiente pista pila cuando hago clic en uno de los enlaces:Android - Problema de Linkify

06-07 20:49:34.696: ERROR/AndroidRuntime(813): Uncaught handler: thread main exiting due to uncaught exception 
06-07 20:49:34.745: ERROR/AndroidRuntime(813): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.app.ApplicationContext.startActivity(ApplicationContext.java:550) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.content.ContextWrapper.startActivity(ContextWrapper.java:248) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.text.style.URLSpan.onClick(URLSpan.java:62) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:216) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.widget.TextView.onTouchEvent(TextView.java:6560) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.View.dispatchTouchEvent(View.java:3709) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107) 
06-07 20:49:34.745: ERROR/AndroidRuntime(813):  at android.app.Activity.dispatchTouchEvent(Activity.java:2061) 

Este es el código que está llamando:

TextView bot = new TextView(c); 
    bot.setText(li.getBottomText()); 
    bot.setTextColor(Color.BLACK); 
    bot.setTextSize(12); 
    bot.setPadding(50, 35, 0, 10); 
    Linkify.addLinks(bot, Linkify.ALL); 
    rL.addView(bot,ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); 

entiendo lo que está diciendo el error pero no estoy seguro de cómo solucionarlo. ¿Alguien tiene alguna idea? Gracias de antemano por su ayuda!

Respuesta

17

Resulta que la respuesta a esto es mucho más simple de lo que había pensado originalmente. El problema fue que cuando estaba pasando el contexto a mi adaptador personalizado estaba pasando el getApplicationContext() que no es lo mismo que usar el identificador .

INCORRECTA:

Context mContext = getApplicationContext(); 
CustomAdapter mAdapter = new CustomAdapter( 
       mContext, 
       itemList); 

CORRECTA:

CustomAdapter mAdapter = new CustomAdapter( 
       this, 
       itemList); 
+0

Gracias a un tipo mucho .. :) :) Gracias –

+0

chico, que me salvó la vida. ;) – emaleavil