作者LaPass (LaPass)
看板AndroidDev
标题[问题] 我屁股着火了 ActivityNotFoundException
时间Sat Oct 1 20:11:52 2011
我在Activity中设计一个按钮
打算让他在按下去时开启另一个Activity
结果一执行到 startActivity(); 的时候
就会吐 ActivityNotFoundException
查了一下,几乎所有说明都写:
要在 AndroidManifest.xml中注册才不会出错
问题是.....
我已经有注册了啊!
很奇怪,我之前加别的Activity到程式中都没出问题
搞不清楚为什麽这次就出问题了。
看了整个下午还是找不出原因,想请大家帮忙看一下
MapShow.java
//========================================
package com.seelife.clentf02;
public class MapShow extends MapActivity implements LocationListener
{
(....中略.....)
Intent intent = new Intent();
intent.setClass(MapShow.this,UserShow.class);
startActivity(intent);
(....中略.....)
}
AndroidManifest.xml
//========================================
<?xml version="1.0" encoding="utf-8"?>
<manifest .........>
<application ...................>
<activity ........> </activity>
<service ..........>
<intent-filter >
<action ................ />
</intent-filter >
</service >
<activity android:name=".MapShow">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="UserShow" android:label="@string/app_name">
</activity>
</application>
</manifest>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.233.155.16
1F:推 ericinttu:可能是另外一个activity起来的时候有问题. 10/01 20:30
2F:→ ericinttu:UserShow 的 layout, 是没有问题的吗? 10/01 20:31
3F:→ LaPass:我在UserShow的开头有加Log.d()去显示讯息,在跑到那一行之 10/01 20:33
4F:→ LaPass:前 (读取layout之前) 就当了 10/01 20:34
5F:推 ericinttu: 哪一行? 10/01 20:34
6F:推 ericinttu:<activity android:name=".UserShow" 10/01 20:36
7F:→ ericinttu: ↑ 加个点吧 10/01 20:37
8F:→ LaPass:我去试试看 10/01 20:38
9F:→ Killercat:有工具用就用工具加吧..... 10/01 20:38
10F:→ LaPass:还是一样 orz.... 10/01 20:40
11F:→ LaPass:我是用工具加的啊.... 10/01 20:40
12F:推 ericinttu:应该是其他原因吧. 刚刚自己开新专案写了一个, 是正常的 10/01 20:55
13F:→ ericinttu:activity name ".xxx" 有没有加点都可以过了(有被吓到XD 10/01 20:57
14F:→ LaPass:找到原因了..... = =||| 10/01 20:58
刚刚用重构把UserShow重新命名後,发现
intent.setClass(MapShow.this,UserShow.class);
↑
这里没变
<activity android:name="UserShow" android:label="@string/app_name">
↑
这里变了
把滑鼠移上去,才发现他指的是我另一个档案中的innerclass 也叫做UserShow
public final class CTag
{
(.....中略.....)
public static final class UserShow
{
public static final String Uid ="UserShowUid";
(.....中略.....)
}
(.....中略.....)
}
※ 编辑: LaPass 来自: 125.233.155.16 (10/01 21:03)
15F:→ ericinttu:改到别的档? 10/01 20:59
16F:→ qrtt1:什麽原因!? 10/01 21:02
17F:→ LaPass:对不起... 我太粗心 orz 10/01 21:03
18F:→ jain00:是档名重覆吗? 10/01 22:48
19F:→ LaPass:类别名称重复 10/01 23:20
20F:→ laiis:嗯... 重复名称... 笔记笔记 10/02 00:22