2011-09-12 73 views
1

我希望能够节省一些时间,并想知道这是否可行。android:活动作为更大屏幕的子屏幕?

目前有一些android手机屏幕已经由一位前同事开发。我正在开发一款平板电脑的新屏幕,它需要将他开发的现有屏幕的内容显示为子屏幕(例如屏幕右下角的一个小框),因为现有屏幕非常美观我正在开发的屏幕是10.1英寸的平板电脑,所以它只占用了我屏幕的一小部分。

但是,问题是他的屏幕全部编码得很好并与相关的活动集成在一起,我希望通过从我的屏幕/活动单元中调用一个Intent来重用它,尽可能少地修改它。

问题:是否可以将活动显示为子屏幕另一个活动? 请注意,我知道你可以启动一个使用Intent + startActivity()从一个屏幕触发并忘记活动。但这只会使新屏幕出现在旧屏幕的顶部。

我希望新屏幕显示为现有屏幕的子屏幕。任何想法?

所有的指针和建议表示赞赏。 TIA

回答

4

您正在寻找Fragments

从Android文档:

甲片段表示行为或在 活动的用户界面的一部分。您可以在单个活动中合并多个片段到 构建多窗格用户界面并在多个活动中重复使用片段。您可以将某个片段视为活动的模块化部分,该活动在其自己的生命周期中拥有 ,接收其自己的输入事件,并且可以在活动运行时添加或删除哪些内容。

如果您正在开发运行3.0以前Android版本的设备,请查看compatibility library,该版本允许在版本1.6及更高版本中使用Fragments。

此外,如果您正在开发手机和平板电脑,则可以在两个界面中重复使用相同的片段。

+0

感谢大卫,这正是我需要做的“为手机和平板电脑开发”。我们正试图重复使用现有的代码,并且维护一个代码源。 – spearfishman

+0

好东西!如果您遇到问题,我建议您查看开源[Google IO](http://code.google.com/p/iosched/)Android应用程序。在那里有几个片段的例子,用于平板电脑和手机的形式。 –

+0

@spearfishman如果您发现这个有用,您可以点击左边的绿色勾号将其标记为已接受的答案。 –