iphone - 如何在 iOS 上获取模板选择器/文档浏览器 View ?

标签 iphone ipad uiview ios4 ios

用于在 iPad 上的 iWork 应用程序中创建模板选择器 View 的 View 是什么? alt text

如何在 iPad 上创建类似的 View ,以及考虑到屏幕尺寸限制,在 iPhone 上实现它的最佳方法是什么。

最佳答案

没有任何内置 View 可以提供该功能。这意味着需要做很多工作来复制该功能。

您可以尝试的是:

1) 创建一个带有 Nib 的新 UIViewController

2) 添加顶部栏和一个 UIScrollView,其中 opaque = NO 且 alpha = 0。

3) 如果您有固定数量的"template",则可以将它们直接添加到 Nib 中。您应该能够使用 UIImageView

4) 否则,您可以动态添加"template",例如viewDidLoad。唯一可能有点棘手的部分是计算框架。下面的伪代码应该可以帮助您入门。

int MARGIN = 20;
float templateWidth = self.scrollView.bounds.size.width / 3;
float templateHeight = 300;

for (int i = 0; i < [templates count]; i++) {
  int row = i / 3;
  int col = i % 3;

  float x = MARGIN + col * templateWidth;
  float y = MARGIN + row * templateHeight;
  CGRect templateFrame = CGRectMake(x, y, width - 2 * MARGIN, height - 2 * MARGIN);

  // initialize `UIImageView` or similar

  templateView.frame = templateFrame;
  [self.scrollView addSubView:templateView];
}

self.scrollView.contentSize = CGSizeMake(self.scrollView.bounds.width, /* max bottom of templates */);
} 

完善布局后,剩下的事情应该非常简单,因为您只需要响应模板图像上的点击。查看 UITapGestureRecognizer 了解一种实现方法。

关于iPhone。我可能会按照您在 iWorks 应用程序中选择文档的方式来完成此操作。此时屏幕上仅显示一个模板,您可以向左/向右滑动进行选择。但这一切都取决于具体情况。也许表格 View 更适合 iPhone。

祝你好运!

关于iphone - 如何在 iOS 上获取模板选择器/文档浏览器 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3865898/

相关文章:

iphone - 当成功 block 启动时,__block 弱崩溃

ios - 将 Collection View 单元格的 subview 发送到后面会阻止它更改 backgroundColor

iphone - 我的应用程序崩溃了,但除了数据格式化程序暂时不可用的行之外没有显示任何内容,我现在应该做什么?

iphone - 在 xcode/ios 中以编程方式编辑 RTF/DOC 文件

iphone - 使用indexOfObject :inSortedRange:options:usingComparator:对数组进行二分搜索

swift - 添加 UIView 作为 subview 并确定它们在 Swift View 层次结构中的位置

ios - viewDidLoad/viewDidAppear 的 UIView 动画?

iphone - 支持 Retina 4"的最低 iOS 版本

iphone - 如果我没有启用角标(Badge),为什么我的 iOS 应用程序图标会显示角标(Badge)编号?

iphone - UIApplicationDidEnterBackgroundNotification 被多次调用