2014-02-08 235 views
0

我读过关于片段vs活动的stackoverflow上的很多帖子,但我不知道我明白。我发布了一个我正在处理的问题 - 希望你们中的一些人能够帮助我澄清在这种情况下的含义。片段,活动,片段活动

我想用两个选项卡构建应用程序:“拍照”和“浏览照片”。在拍照时,用户可以拍照。在浏览照片中,用户可以浏览已拍摄的照片。

因此,我在MainActivity中制作了两个选项卡,它扩展了FragmentActivity并实现了ActionBar.TabListener。 MainActivity的onCreate创建一个SectionsPagerAdapter,它从FragmentPagerAdapter扩展而来。我的SectionsPagerAdapter的主要目的是创建新的片段。它创建一个TakePhotoFragment和一个BrowsePhotosFragment。

问题:在TakePhotoFragment中,我应该创建一个拍摄照片的新活动吗?我知道如何创建一个允许用户拍照的活动,但不确定这种情况是否正确。我确实已经读过这些片段主要是出于UI的原因,并且处于活动中,所以在一个片段中创建一个活动似乎有点奇怪(我也不知道如何做到这一点)。

我想我面临的主要问题是,尽管我已经完成了所有的阅读,但我对如何使用活动和片段感到困惑。也许有人可以帮助阐明我想要做的事情?

谢谢!

+1

实际上片段只是用来替换视图。在实施sherlock Action Bar或Action Bar时会很有帮助。点击此处查看关于片段概念的清晰视图http://www.androidbegin.com/ – 2014-02-08 20:44:04

+0

片段不用于替换视图。 –

回答

2

好吧,只是一些说明,片段是放入活动内容,而不是活动。您将始终拥有一个可以承载碎片但不以其他方式运行的活动。 对于相机而言,就像使用任何其他功能一样,您将调用外部活动或服务,您可以在片段内部进行操作,就像语音识别或条形码扫描一样。 这是一个简单的例子,你可以尝试,并适应它的片段。 http://developer.android.com/training/camera/photobasics.html 希望它有助于您的研究,祝您好运。

1

首先,你不能在片段中创建一个活动。

如果你有一个在活动中工作的代码,它也应该在一个片段中工作。只需使用片段的onCreateView而不是Activity的onCreate。

如果您使用某种SurfaceView拍照,它可以在任何情况下工作。如果你打电话给外部摄像头,它与你的布局无关,它只是调用设备的照片应用程序,所以你不能把它放在你的片段。