作者FY4 ()
看板AndroidDev
标题[问题] 关於Toast
时间Sat Apr 30 13:01:47 2011
开发层: (应用/框架/库/核心)
应用
我用了一个class useMap来实作MapView
另一个class b实作ItemizedOverlay 图标层
在覆写ItemizedOverlay 里面的onTAP function
当点到时 利用Toast来显示一段叙述
但是问题来了
当我在onTap里面写
Toast.makeText(useMap.this,........)
他却显示no enclosing instance of the type useMap is accessible in scope
想请问是发生了什麽问题...
我全部都是照着书上程式码打的
"Android 2 手机应用程式设计入门 第三版" 第43章
上网查相关资讯好像没人遇到我这问题
如果改成Toast.makeText(null,........)可以执行
在模拟器上也可以跑
图标也有显示
但是按图标的话 整个程式就强制关闭了
我希望要有Toast阿!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.171.176.159
※ 编辑: FY4 来自: 118.171.176.159 (04/30 13:02)
※ 编辑: FY4 来自: 118.171.176.159 (04/30 13:03)
1F:推 abccbaandy:去看一下makeText的第一个参数要填什麽 04/30 13:10
2F:→ FY4:context? 04/30 13:15
3F:推 tomap41017:对,找出适当的context用 04/30 13:52
4F:推 coronach:简单来说 你的View一定是挂在某个Activity下面 04/30 14:23
5F:→ coronach:Activity是Context的一种 所以看你的Activity叫什麽 04/30 14:23
6F:→ coronach:就填个...例如myAct.this这样 04/30 14:24
7F:→ FY4:我用useMap extends MapActivity 来实作MapView 04/30 14:55
8F:→ FY4:问题就是我在Toast.makeText(useMap.this,........) 04/30 14:55
9F:→ FY4:已经打了名字了 却还是不行阿= = 04/30 14:56
10F:→ FY4:no enclosing instance of the type useMap is accessible in 04/30 14:58
11F:→ FY4:scope 在useMap的下线还是显示红线 04/30 14:58
12F:推 tomap41017:问题就是你在Overlay内下找不到useMap = = 04/30 15:03
13F:推 donnolove:class b的程式刚开始有宣告一个Context对吧? 04/30 18:11
14F:→ donnolove:直接把Context的那个变数名称放到makeText的第一个参数 04/30 18:12
15F:→ donnolove:试看看 Toast.makeText(context,....) 04/30 18:13
16F:推 cjoe:速速看getContext()呢? 05/01 21:46
17F:→ jacktoad:getBaseContext() 05/01 22:33
18F:推 Jms1982:getApplicationContext(); 05/01 23:19
19F:→ FY4:大家人太好了 忘记说我已经解决问题了 谢谢各位的宝贵意见 05/03 17:53
20F:推 cobrasgo:建议一下,你要不要把解法简单说一下?可以造福後人 05/03 21:35