2010-08-25 94 views
2

希望这很简单。使用IF语句查看活动开始的目的 - ANDROID

我有一个中央活动,可以从两个不同的类发起。我希望在这个中心的活动,我可以有一个IF语句一样

if(this.getIntent() == MainMenu.class) 
{ 
// Do something here 
} 

但很明显,这是不合法的我怎么可能从结构意图开始什么类检查的表达式。

非常感谢

回答

2

我认为你可以将一个参数为目的,然后就比较针对(以下是伪代码):

if (intent.getIntExtra("starter") == 1) { ... } 
+0

您好我忘了:

intent.putExtra("starter", 1) 

,然后就在你的核心活动比较添加其中一个类已经传递了一个Extra包,如果某个活动传递了该意图,那么我将在另一端检索这个包。如果我从另一个类传入一个额外的值,那么它将覆盖当前的包。 – ComethTheNerd 2010-08-25 13:19:11

+0

如果不是这样,您可以根据需要传递尽可能多的附加内容。此外,如果只有其中一个传递束,为什么不使束存在成为定义条件。 – 2010-08-25 14:46:41

+0

其中一个类将包含游戏参数的包传递给活动以便从某个级别重建游戏,另一个类需要传递整数值以确定游戏模式。虽然当我这样做时,似乎捆绑的内容被上次调用意图启动活动的类所覆盖。 也许我可以传递调用类的名称作为捆绑中的字符串,并将其用作实际的条件? – ComethTheNerd 2010-08-25 15:15:29

0

你为什么不一起传递的东西作为一个额外的使用Intent#putExtra,然后检索它使用Intent#getExtra中央活动?