android中的活动变化

时间:2012-07-30 14:46:14

标签: java android android-intent android-activity

我正在为Android制作游戏,但我从未真正找到改变活动或内容视图的好方法。我现在有1个主菜单活动,其内容视图接收MotionEvent个s并将它们发送到我的自定义按钮。另一个Activity有一个简单的contentView,只用一种颜色绘制屏幕。所有contentView具有相同的基类,活动2来自活动1。

问题是,如果尝试更改活动,应用程序就会崩溃。它需要大约20秒,然后出现错误消息,表明应用程序没有响应。 在logcat中,还有一条消息keyDispatchingTimedOut sending to activity2 以下是活动变更的代码:

public void changeActivity() {
    Log.d("changing", "activity");
    Intent i=new Intent(this, Activity_Level.class);
    startActivity(i);
}

有什么想法吗?

4 个答案:

答案 0 :(得分:1)

您必须在方法

中使用活动的上下文
Intent i=new Intent(Youar_Activity_Name.this, Activity_Level.class);
                    ^^^^^^^^^^^^^^^^^^^^^^

在changeActivity()方法中使用上述代码。

答案 1 :(得分:1)

如果应用没有响应,那是因为你在UI线程上做了很长时间的操作。也许在调用此功能后你还会继续做其他事情吗?

如果人们说,活动没有打开(你可以通过写入onCreate方法中的日志来检查它),检查清单。

在任何情况下,如果你想更好地控制活动,你可以检查用于意图的可能标志,你也可以使用片段(如果可能的话),就像google推荐的那样。

答案 2 :(得分:0)

如果没有看到logcat消息,我打赌你忘了在AndroidManifest.xml中添加活动

答案 3 :(得分:0)

我感觉您没有将所有活动添加到manifest.xml文件中。尝试在那里添加所有活动,并给它一个运行。