作者dwadefans (wade)
看板AndroidDev
標題[問題] 在另外的class中finish()掉原本的context
時間Fri Oct 17 11:34:50 2014
如何在其他的class中使用finish()指令將原本的activity給關掉呢?
我將傳進來的Context 執行 finish()時都會出現下列錯誤:
android.app.application cannot be cast to android.app.activity
我是使用AsyncTask,當我事情處理完後,要進入下個activity
將原本的activity關掉,有什麼方法可以達成這項任務呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.184.211.155
※ 文章網址: http://webptt.com/m.aspx?n=bbs/AndroidDev/M.1413516893.A.3B8.html
1F:→ nOhiTmE: 因為你收到的根本不是activity,是application啊 10/17 11:39
2F:→ Deltaguita: 你要確保你丟進去的是activity 10/17 11:43
4F:→ dwadefans: 我有把Context傳進來 在建構元的部份應該取得Activity 10/17 11:45
5F:→ dwadefans: act = (Activity)cxt; -->可是這方法好像行不通... 10/17 11:46
6F:→ dwadefans: 我後來是直接把整個Activity傳進來 像以上網址的方法.. 10/17 11:46
7F:→ dwadefans: finish時是使用 MyActivity.finish() 10/17 11:48
8F:→ dwadefans: 為何不能用這樣呢? ((Activity) cxt).finish(); 10/17 11:48
9F:→ Deltaguita: 你貼自己的code吧 這樣講比較快 10/17 15:21
10F:→ dwadefans: 哈 不好意思 晚點吧 code 貼上來 10/17 18:07
11F:→ issuemylove: 你是不是用到getApplicationContext()? 10/17 18:18
12F:→ issuemylove: 來當參數傳入 10/17 18:18
13F:→ ssccg: 你傳的時候要傳this,不是getApplicationContext() 10/17 21:00
14F:→ ssccg: 一樣都是Context,Activity跟Application不一樣 10/17 21:00
15F:→ Armuro: 推樓上 10/20 07:55