在选项卡式UIPopover中使用UIImagePicker

时间:2011-01-21 01:16:01

标签: ipad uiimagepickercontroller uipopovercontroller

我正在开发一款iPad应用程序,需要在设备/相册,远程和应用程序附带的一些图像源。现在理想的情况是拥有一个UIPopover控制器,每个源有3个选项卡。唯一的问题是我似乎无法弄清楚如何让UIImagePicker在自己的标签中。我想要做的是非常类似于Apple的iPad主题演讲。照片图标的弹出框有标签,最左边的标签名为media肯定有一个UIImagePicker。我不知道他们是怎么做到的,我可以这样做吗?我认为主要的问题是图像选择器是它自己的导航控制器,它不能被推到另一个导航控制器。任何帮助将不胜感激!

3 个答案:

答案 0 :(得分:2)

看看这个 - https://github.com/key1jp/ELCImagePickerController

您可以使用自定义资产库

实现它

答案 1 :(得分:1)

内置的图像选择器并不好。

创建您自己的图像选择器并将其作为普通视图添加到导航控制器。从WWDC 2010示例代码中的Matt Tuzzolo或MyImagePicker开始。请注意,您可能想要添加图像和视频预览 - 我从MyImagePicker复制了图像查看器,并为其添加了“添加”或“删除”按钮,视频也是如此。

您的图片选择分为两个步骤,一个用于选择组,另一个用于选择组内的资产。我建议将第一步划分为两个 - 如果只有一个,则直接转到该组,即当您找到第一个组时,检查该组是否是最后一个(阻止停止参数)。然后按下右视图控制器。

还要大幅修改缩略图的大小,它们现在是iPhone的大小。添加一行元数据(图标和持续时间)看起来更好,并为视频提供更多信息。

我还建议在2秒后添加“点击并保持”功能以扩展信息。

通过创建一个可以提供您想要的协议来处理不同的来源,即

-(BOOL)isImageAtIndex:(NSInteger)index;
-(UIImage*)thumbnailForUndex:(NSInteger)index;
-(void)setSelectedAtIndex:(NSInteger)index;

创建一个处理本地文件,包含资源和资产的源是完全可能的 - 我使用NSURL并检查url方案。

答案 2 :(得分:0)

你没有在你的标签上使用UITabBarController吗?您应该能够将UIImagePickerController直接添加到viewControllers。不过,我不确定这是否支持使用图像选择器; the documentation仅提及以模态方式显示它或在UIPopoverController中显示它。

查看Apple应用程序以了解可以使用各种内置控件做什么通常没有用,因为Apple允许自己使用私有API。