根据文本大小在视图中重新定位图像 - iOS

Posted

技术标签:

【中文标题】根据文本大小在视图中重新定位图像 - iOS【英文标题】:Reposition images within view based on size of text - iOS 【发布时间】:2012-03-16 13:25:48 【问题描述】:

我最近进入了 ios 开发,我正在尝试构建一些看起来(非常粗略)像这样的东西:http://falkendev.com/downloads/ios-sample.png

基本上,它是一个显示简单文本的页面——可能跨越多行的大标题文本、一个分隔线,然后是可能是可变长度的较小描述性文本。此文本不需要是可编辑的。我正在使用界面生成器,但我想我想要做的事情可能需要以编程方式完成?

两个问题:

-- 如何创建这些文本字段,以便它们根据内容调整高度?我假设我将为每个使用标准的“文本”字段,使它们不可编辑,然后以编程方式更改它们的高度?然后根据各个文本字段的高度,是否需要调整文本字段的位置以及它们之间的分隔线?

-- 如何使页面可滚动?描述性文本可能会很长并且会超出屏幕边缘。我希望整个页面都是可滚动的,而不仅仅是描述性文本部分。我假设我会将所有元素放在滚动视图中......但目前当我这样做并查看它时,视图只是居中(切断顶部和底部)并且我无法滚动它全部。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

将滚动视图内容大小设置为大于其实际大小 让它像这样滚动:

scrollView.contentSize = CGSizeMake(YourWidth ,YourHEight ); // Here you can change either of height and width to make it more scrollable in that direction.

您可以使用UITextView 对象来拥有一个可滚动的文本字段... 可以滚动显示其他文本..只需设置其编辑 属性为NO。

否则自己动态更新标签高度...使用

NSString sizeWithFont方法

【讨论】:

感谢您的确认。在这种情况下,我认为我只需要停止过度思考,而是进行实验直到我得到它。

以上是关于根据文本大小在视图中重新定位图像 - iOS的主要内容,如果未能解决你的问题,请参考以下文章

Interface Builder 以小增量降低情节提要、调整大小和重新定位视图

弹出虚拟键盘时如何在 iOS 浏览器上重新定位视图?

动画 UICollectionView 单元格大小更改和重新定位周围的单元格

隐藏视图并相应地重新定位其他视图

使用自动布局隐藏视图并重新定位其他视图

移动到另一个文本字段时,为啥 UIScrollView 会重新调整大小 - iOS iPhone