iphone - 您将如何在 iPhone 应用程序中实现可滚动网格?

标签 iphone uikit view uiscrollview

我有大约 50 张图像,每张图像的尺寸为 50 x 50 像素。我希望用户选择其中之一。所以首先我想到了 UITableView,但这不是正确的事情。它浪费了大量的屏幕空间。与其将所有图像一个接一个地放置,不如显示一个由 6 列和 n 行组成的网格。

我将使用 UIScrollView 并用 UIView 对象填充它,我会自动排列这些对象,使它们看起来像网格。这是要走的路吗?或者还有其他建议吗?

最佳答案

我在我的应用程序中做了一些非常类似的事情 - 一个 NxN 网格,下面有一个图像,顶部有另一个 subview 来绘制“线条”,所有这些都由 UIScrollView 拥有。我建议使用单独的 View 来绘制图像,例如:

-(void) drawRect(CGRect rect) {
    CGRect smallerRect = CGRectMake(x, y, width, height);
    [yourImage drawRect: smallerRect];
    // repeat as needed to draw the grid
 }

另一张海报提到,如果您的 View 由 UIScrollView 拥有,您将无法获取触摸事件 - 这根本不是事实。我有它的工作。不过,您可能需要设置以下内容:

[yourScrollView setUserInteractionEnabled: YES]
[yourGridView setUserInteractionEnabled: YES]

关于iphone - 您将如何在 iPhone 应用程序中实现可滚动网格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/820570/

相关文章:

iphone - 如何找到根 UIViewController

iphone - 调用connect错误前必须设置myJID

ios - 检查 UITableViewCell 是否完全可见以进行自动播放

ios - iOS 检查视网膜像素的工具或技术?

iphone - UITabBarController - 如何为简单的开关设置动画?

database - SQL 错误 : ORA-01039: insufficient privileges on underlying objects of the view

objective-c - 什么描述了 NSNumberFormatter -maximumSignificantDigits?

iphone - 以编程方式使用 Stack Overflow 进行身份验证

ios - 为什么 UIScrollView 会暂停我的 CADisplayLink?

Android - 创建带有 float 标题的 ListView