2010-06-07 18 views
5

Özel Bağdaştırıcımda kullanacağım bağlantı ile sorun yaşıyorum. Hata ne diyorAndroid - Linkify Sorun

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); 

anlıyorum: Burada

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) 

o aradığını kod şudur: Ben bağlantılardan birini tıkladığında nedense ben şu yığın izini alma ama nasıl düzelteceğimi bilmiyorum. Herhangi bir fikri olan var mı? Yardımlarınız için şimdiden teşekkür ederiz.!

cevap

17

Bu sorunun cevabını, ilk başta düşündüğümden çok daha basit. Sorun, bağdaştırıcımı özel bağdaştırıcımdan geçirdiğimde, getApplicationContext() geçiyordu, bu bu tanımlayıcısının kullanarak aynı değildi.

YANLIŞ ŞEKİLDE:

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

DOĞRU YOL:

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

Çok teşekkürler dostum .. :) :) –

+0

Teşekkür adam, hayatımı kurtardın. ;) – emaleavil