有没有办法在ViewGroup中嵌入活动?或者将活动转换为视图?

时间:2011-10-29 01:18:22

标签: android android-layout

我正在构建一个具有主Activity的应用,该应用利用了Android ViewGroup元素。我已经能够使用ListView的instantiateItem()方法将ViewGroup添加到PagerAdapter并且它们都运行良好。我还有一个单独的Activity,我用它来显示使用RelativeLayout构建的信息。换句话说,这是一个全面的活动。当然,两个活动都运行良好,并且应用程序已设置好,目前您可以使用简单的Intent来完美地切换它们。

我的问题是如何在第一个活动中嵌入第二个活动的功能和布局?我想将第一个Activity放在View ViewGroup的{​​{1}}之一中。根据我的理解,Activity仅接受视图为“可实例化”的项目,因此我必须找到一些方法将PagerAdapter转换为Activity。所以我可能必须将其变成自定义View?但那我该如何定义它的布局和方法?

回顾一下:

View是一个ViewGroup活动,已包含多个Activity1

ListViews是一个常规活动,使用XML布局构建,其根布局为Activity2

我想将RelativeLayout的整个功能和布局嵌入Activity2的{​​{1}}之一。

我如何做到这一点?

2 个答案:

答案 0 :(得分:4)

我认为你想要的是一个ActivityGroup,它已经被API 11中的Fragment取代。Here是一个关于使用TabActivity的教程,它是一个ActivityGroup。

我认为你应该非常谨慎地做到这一点......活动意味着代表一个屏幕是有原因的。这样,操作系统可以更轻松地释放资源,从而提高性能。

如果您定位的API高于11,(例如Android 3.0+)here是关于Fragments的官方指南。

我认为Fragments是一个比ActivityGroups更好的解决方案,因为它们是蜂窝的平台亮点。

答案 1 :(得分:0)

您应该使用Fragments。毫无疑问。您可以通过android Support Package将片段用于较低的API级别。