-1

我是 iOS 编程新手,所以我希望这不是一个愚蠢的问题。我必须以编程方式在我的视图中添加十个不同的按钮。我知道如何以编程方式添加按钮,但我的按钮不适合视图,因此其中一些必须出现在视图的可视高度下方,所以我想添加按钮,以便用户可以向上和向下滑动在视图中移动。如何才能做到这一点?

4

3 回答 3

1

UIKit提供了许多标准的 UI 元素来帮助处理显示的内容多于屏幕在任何时候可以显示的内容:

您可能会从 the 提供的一些自动布局和格式中受益,UICollectionView但从您的描述中听起来好像 theUIScrollViewUITableView最适合您的场景。

UIScrollView

UIScrollView充当用户对其包含的底层视图的视口,并默认提供复杂的平移和缩放功能。它是高度可配置的,如果您不需要它,您可以阻止缩放功能。

只需确保将视图放置UIScrollView在 Interface Builder 内并设置contentSize属性即可。设置contentSize大于的边界UIScrollView应该会自动启用滚动。要启用缩放,请UIViewController实现UIScrollViewDelegate

@interface MYViewController : UIViewController <UIScrollViewDelegate>
@end

然后确保在方法中返回您的视图viewForZoomingInScrollView:

-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
    return theViewContainingTheButtons;
}

UITableView

专门设计用于显示可以垂直滚动的UITableView项目列表,如果其内容高于视图的大小。

AUITableView由许多UITableViewCells组成,每个 UITableViewCells 都可以包含您希望显示的按钮之一。Apple 的iOS 表视图编程指南涵盖了UITableView.

结论

UITableView方法专门关注您所询问的内容,而忽略了托管按钮的视图中可能还有其他内容。这也意味着您必须更改现有的动态按钮放置代码并编写新代码以使用表格视图。实际上,这很可能UIScrollView是您正在寻找的东西,但我想提供对您可能不知道的其他 UI 元素的曝光,这些元素可用于实现您所描述的内容。

祝你好运!

于 2013-03-13T10:42:40.827 回答
0

您不需要使用称为 UIScrollView 的特殊元素。它会自动处理所有这些。这是文档的链接:http: //developer.apple.com/library/ios/#documentation/uikit/reference/UIScrollView_Class/Reference/UIScrollView.html

于 2013-03-13T10:35:12.530 回答
0

您可以使用UIScrollView.

而不是添加UIButton到添加UIView然后到UIScrollView和设置UIScrollView contentSize

更多帮助:来自 Apple 的 UIScrollView

于 2013-03-13T10:36:04.870 回答