我是否需要为每个游戏级别创建一个新的活动?

问题描述:

可以说我有一个游戏,你回答的问题。每个级别的问题都变得越来越难,并开创了一个新的水平,您需要回答上一级的特定数量的问题。我是否需要针对每个级别和自己的问题创建一项新活动?如果我有100多个级别,我将需要100个活动?不会那个应用程序滞后?也许有另一种方式?我总是想知道像糖果粉碎这样的游戏如何管理这样多的关卡?我是否需要为每个游戏级别创建一个新的活动?

+0

不,您可以使用片段并重复使用它 – 2015-02-10 11:00:31

您可以使用片段,每次你改变你可以取代它的水平。 首先你必须阅读FragmentTransaction examplanation,然后更换,如果你改变你的水平是片段...

取代的一个简单的例子是:

Fragment NextLevel= new NextLevel(); 
FragmentTransaction transaction = getFragmentManager().beginTransaction(); 
transaction.replace(R.id.fragment_container, NextLevel); 
transaction.addToBackStack(null); 
transaction.commit(); 

这是我会怎样做到这一点如果我必须这样做,希望它有帮助。

我会做到这一点的方法如下:

1X活动简单地保持片段 1个片段,它接收(在构造函数为例)它需要的数据(在这种情况下,你的问题,问题的答案等等),然后简单地显示它。 然后,当用户需要切换到另一个层次的问题,只是instansiate另一个片段,并给它,它需要以显示新的信息,然后关闭旧片段。

最后,你将有1个片段,但它会被实例化多次。

要在Android上创建一个动态的,多窗格界面,就像你说的,很多的层次,你需要UI组件和活动行为封装成,你可以换到和你的活动模块。

您可以使用Fragment类创建这些模块,它的行为有点像嵌套活动,可以定义自己的布局并管理自己的生命周期。

那么就没有必要100个活动。

你可以参考来自Android开发者这个官方例子上手

http://developer.android.com/shareables/training/FragmentBasics.zip

祝您好运!