作者tanker (早起精神好)
看板AndroidDev
标题[问题] 将Activity给关闭
时间Sat May 12 15:20:32 2012
请问一下
因为要使用画布的关系
所以另外开一个class extends view
想要使用MotionEvent中的FingerDown来判断画线
若要使画两条後点萤幕一下就使程式关闭
那finish()要写哪里呢
若写在Activity下的 Activity.this.finish()
if(num==2)
TouchActivity.this.finish();
会没法读到
想请问怎麽写在另一个class extends view里
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 112.104.64.108
1F:推 LaPass:你的class是activity的inner class吗? 如果是, 05/12 15:22
2F:→ LaPass:Activity.this.finish()应该就会有作用了 05/12 15:23
3F:→ LaPass:这个问题跟你程式结构有关,只看这些资讯只能乱猜.... 05/12 15:25
http://codepad.org/EN7B9Ix2
这是还没有finish的情况,想请问一下该怎麽做才能finish()。
※ 编辑: tanker 来自: 123.204.163.249 (05/12 20:02)
4F:推 shietsd:先切回原本的 activity 再 finish ? 05/12 20:10
5F:推 LaPass:在onTouchEvent里,关闭时用 this.XXXX().finish(); 05/12 20:17
6F:→ LaPass:xxxx 是取得所属的activity的方法,但是有可能是activity的 05/12 20:18
7F:→ LaPass:父类别,例如Context之类的。另外,如果context没有finish 05/12 20:20
8F:→ LaPass:方法的话,就把Context转型成Activity。 05/12 20:21
9F:→ LaPass:如果你觉得找文件很麻烦,或是说明很难找的话,就在Graph2 05/12 20:22
10F:→ LaPass:的建构子改成public Graph2(Activity context) 05/12 20:23
11F:→ LaPass:并多加个栏位去把context存起来,要关闭时就用 05/12 20:24
12F:→ LaPass:context.finish(); 就可以了 05/12 20:24
13F:→ LaPass:PS: xxxx 是取得所属的activity的方法 <= 从View的文件去找 05/12 20:25
谢谢 总算解决了
※ 编辑: tanker 来自: 140.113.144.196 (05/13 17:32)