【发布时间】:2013-08-02 14:14:51
【问题描述】:
您好,我有一些应用程序(来自书中),看起来像这样:
您可以看到图像被裁剪。我想要一个 UIScrollView 它允许向上滚动并查看整个图片。
这就是我的应用在界面生成器中的外观。
你有什么建议我应该在哪里添加 ScrollView(作为哪个子视图等)来实现我需要的? (我想我需要一些中介 UIView?)
【问题讨论】:
标签: ios objective-c
您好,我有一些应用程序(来自书中),看起来像这样:
您可以看到图像被裁剪。我想要一个 UIScrollView 它允许向上滚动并查看整个图片。
这就是我的应用在界面生成器中的外观。
你有什么建议我应该在哪里添加 ScrollView(作为哪个子视图等)来实现我需要的? (我想我需要一些中介 UIView?)
【问题讨论】:
标签: ios objective-c
这是我通常对固定内容所做的:
UIScrollView 以您想要的大小和位置创建您的视图,并连接到 scrollView 插座。contentView 的 UIView 插座。在viewDidLoad 中这样做:
// Put the content view into the scroll view
[self.scrollView addSubview:self.contentView];
self.scrollView.contentSize = self.contentView.bounds.size;
如果您想要动态内容,则以编程方式将它们布置在viewWillLayoutSubviews 中,并设置scrollView 的contentSize。
【讨论】:
mainView 是一个中间视图 - 带有蓝色 bckgnd。您可以看到它与 UIToolbar 重叠...
viewDidAppear 中创建视图,而是在 Interface Builder (IB) 或 loadView 或 viewDidLoad 中创建视图。
viewDidAppear(例如,在从导航返回视图后再次显示时,或解锁屏幕,或关闭模式对话框时)。因此,如果您继续在那里添加视图,您将拥有很多视图。
Control 上说,我在 @987654339 中实现了 resignFirstResponder @(使键盘消失)。但是现在它当然不再起作用了,因为如果用户在键盘外点击她会点击mainView——在这种情况下我该怎么办?
将 UIScrollView 添加为 Control 的直接子级,然后将其他所有内容放在滚动视图中。
【讨论】:
添加UIScrollView 作为主视图的第一个子视图,并将所有控件(UITextView, UILabel,...etc ) 作为 UIScrollView 的子视图。
并使用UIScrollView 属性contentSize 设置您的可见区域。
【讨论】:
您应该直接在 Control 下添加 UIScrollView,然后除了工具栏之外的所有其他内容都应该进入它。
在这些情况下,我通常将滚动视图设置为适合所有内容的大小,添加内容,然后调整滚动视图的大小,使其只占用您想要的屏幕。
【讨论】: