1

我有几个片段在平板电脑上的一个活动中组合使用。

然而,在手机上,一个片段就是一个活动。

因此,对于手机,我必须为平板电脑上不存在的活动创建多个 XML 文件和多个 .java 文件。

例子:

对于平板电脑,我有:

activity A has fragments A,B,C

对于我有的手机

activity A has fragment A, activity B has fragment B and activity C has fragment C

对于平板电脑和手机,我都使用活动 A,没问题。但是对于手机,我必须创建 Activity B 和 C XML 和 java 文件,它们几乎不包含任何内容,只是为了让它们托管片段。对我来说这不是很优雅。我宁愿将片段 B 和 C 作为活动自动启动,并让它们作为活动运行,而无需创建大量“虚拟”文件。那可能吗?

4

1 回答 1

2

您可以有一个单独的活动,其中有一个占位符,例如FrameLayout,用于您的片段。然后,您可以根据需要替换片段。

就像是

getFragmentManager().beginTransaction().replace(R.id.mylayout, mMyFragment, "tag");

我相信,这是他们在对 ActionBar 中的标签按下做出反应时通常会做的事情。

于 2013-05-22T10:29:17.807 回答