[問題] 在另外的class中finish()掉原本的context

作者: dwadefans (wade)   2014-10-17 11:34:50
如何在其他的class中使用finish()指令將原本的activity給關掉呢?
我將傳進來的Context 執行 finish()時都會出現下列錯誤:
android.app.application cannot be cast to android.app.activity
我是使用AsyncTask,當我事情處理完後,要進入下個activity
將原本的activity關掉,有什麼方法可以達成這項任務呢?
作者: nOhiTmE   2014-10-17 11:39:00
因為你收到的根本不是activity,是application啊
作者: Deltaguita (貝里斯)   2014-10-17 11:43:00
你要確保你丟進去的是activity
作者: dwadefans (wade)   2014-10-17 11:43:00
我達到這個效果了http://goo.gl/eJX7kW我有把Context傳進來 在建構元的部份應該取得Activityact = (Activity)cxt; -->可是這方法好像行不通...我後來是直接把整個Activity傳進來 像以上網址的方法..finish時是使用 MyActivity.finish()為何不能用這樣呢? ((Activity) cxt).finish();
作者: Deltaguita (貝里斯)   2014-10-17 15:21:00
你貼自己的code吧 這樣講比較快
作者: dwadefans (wade)   2014-10-17 18:07:00
哈 不好意思 晚點吧 code 貼上來
作者: issuemylove (NotLove)   2014-10-17 18:18:00
你是不是用到getApplicationContext()?來當參數傳入
作者: ssccg (23)   2014-10-17 21:00:00
你傳的時候要傳this,不是getApplicationContext()一樣都是Context,Activity跟Application不一樣
作者: Armuro (再傳我一次=.=)   2014-10-20 07:55:00
推樓上

Links booklink

Contact Us: admin [ a t ] ucptt.com