Android - 无法启动之前启动的新活动

时间:2013-01-12 20:11:59

标签: android android-intent

我无法解决这个问题。我实际上不明白这一点。 我在创造一个游戏。一个活动,一个级别有大约1000行代码,所以我不打算整个。但问题看起来像这样: 有一些启动活动,它是启动活动,它启动菜单活动并自行关闭。然后我打开我的第一级活动[从菜单,我通过完成()关闭菜单活动,当它完成[此级别活动]时,我想开始另一个活动。但是出现了问题。一切都工作到3天前,现在当我尝试打开活动它只是崩溃。如果我能记住并编辑了一些代码行,我只是在游戏中添加了几个位图。我的关卡中的这个片段正在关闭它,并且假设打开菜单活动:

canvas.drawBitmap(game_over, 0, 0, null);
                    try {
                        Thread.sleep(500);
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    soSelCarIgn.release();
                    soSelCarRun.release();
                    Intent menu=new Intent("com.ntii.game.adam.Menu");
                    startActivity(menu);
                    finish();

所以我尝试打开活动,这个活动在我第二次开始游戏时没有问题。它发生在任何其他活动中,除了关卡本身。 (我的意思是,当我尝试在关卡中打开关卡然后完成()第一关,它就可以了。当我删除正在启动活动的行时,等级自行关闭,一切正常,没有任何错误。

AndroidManifest:

<activity
        android:name=".Menu"
        android:label="@string/title_activity_main"
        android:screenOrientation="portrait"
        android:noHistory="true" >
        <intent-filter>
            <action android:name="com.ntii.game.adam.Menu" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

有一行“android:noHistory =”true“因为我试图以任何方式关闭此活动。它给了我错误: http://img839.imageshack.us/img839/7426/wtfvh.jpg

我最近添加的位图是小尺寸的jpeg,我试图优化和清理代码,删除其他一些位图,仍然无法正常工作。看起来这个活动在finish()之后没有关闭,当我尝试打开菜单活动时,内存不足。任何想法,线索?

如果有人不了解整个活动的运行顺序:

SPLASH - &gt;菜单 - &gt;等级 - 尝试打开,但有崩溃 - &gt; MENU

2 个答案:

答案 0 :(得分:1)

问题在于:

Intent menu=new Intent("com.ntii.game.Menu");

使用

Intent menu=new Intent("com.ntii.game.adam.Menu");

OR

Intent menu=new Intent(this, com.ntii.game.adam.Menu.class);

答案 1 :(得分:0)

试试这个:

Intent menu = new Intent(currentClass.this, Menu.class);

startActivityForResult(menu,0);

原因是,类的名称是“Menu”,这是你想要引用的,你不需要动作名称,即:“com.ntii.game.adam.Menu”。 ** currentClass只是引用您应用中当前类的内容,因为我不知道它是什么。