让我们说我有一个你回答问题的游戏。每个级别的问题都变得越来越难,并且要打开一个新级别,您需要回答前一级别的特定问题。我是否需要创建每个级别及其自身问题的新活动?如果我有100多个级别,我将需要100个活动?不会落后于应用程序?也许有另一种方式?我总是想知道像糖果粉碎这样的游戏如何管理这么多级别?
答案 0 :(得分:2)
您可以使用片段,每次更改级别都可以替换它。 首先,您必须阅读FragmentTransaction examplanation,然后在更改级别时替换您的片段...
替换的一个简单例子是:
Fragment NextLevel= new NextLevel();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, NextLevel);
transaction.addToBackStack(null);
transaction.commit();
我是如何做到这一点如果我必须这样做,希望它有所帮助。
答案 1 :(得分:0)
我这样做的方法如下:
1x简单地保存片段的活动 1x Fragment,它接收(例如在构造函数中)它需要的数据(在这种情况下,你的问题,问题的答案等等),然后简单地显示它。 然后当用户需要更改到另一个问题级别时,只需实例化另一个片段并为其提供需要显示的新信息,然后关闭旧片段。
最后你将拥有1个片段,但它将被多次实例化。
答案 2 :(得分:0)
要在Android上创建动态和多窗格用户界面,就像您所说的那样,您需要将UI组件和活动行为封装到可以交换进出活动的模块中。
您可以使用Fragment
类创建这些模块,其行为有点像嵌套活动,可以定义自己的布局并管理自己的生命周期。
然后就不需要进行100项活动了。
您可以参考Android开发者的这个官方示例来开始
http://developer.android.com/shareables/training/FragmentBasics.zip
祝你好运!