- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个很大的 CustomView,我在上面放置了一个父 UIStackView
以包含两个 UIStackView
。
每个 UIStackView
都设置为包含两个项目,每个项目均等填充。
第一个UIStackView
包含两个UITextView
,第二个包含两个UIImageView
。
我的目标是让底部的 UIStackView
包含 UIImageViews
以保持其位置直接对齐在具有最高高度的 UITextView
下方。
无论 UITextView
高度增长多久,我都希望它保持这样。
它应该是这样的:
或者像这样:
最佳答案
您已接近您想要的 - 只需进行一些更改...
Stack Views 很棒,除了在 Storyboard/Interface Builder 中设计它们时它们并不总是表现良好。在这种情况下,为了获得您想要的结果, TextView 必须禁用滚动。不幸的是,当您这样做时,IB 会发疯。
因此,您必须在设计 View 时开始滚动启用,然后在加载 View 时通过代码禁用它。
对于您的“父级”垂直 UIStackView
,将其限制在前缘、顶部和后缘 - 没有底部或高度限制。将其设置为 Alignment: Fill
、Distribution: Fill
,因此文本和图像之间有一点垂直缓冲区,Spacing: 10
.
包含 TextView 的水平 UIStackView
应该是 Alignment: Fill
、Distribution: Fill Equally
和 Spacing: 8
.
包含 ImageView 的水平 UIStackView
应该是 Alignment: Top
,Distribution: Fill Equally
,Spacing: 8
。为每个 ImageView 提供适当的宽高比约束 - 在下图中,图像为 200x300
像素,因此我将宽高比设置为 2:3
。
IB 还会提示堆栈 View 需要 Y 位置或高度的约束。这并不完全正确,但 IB 在这方面让我们失望了。因此,给左侧 TextView 一个高度约束 - 使用什么并不重要(我使用的高度为 160)。关键是将该约束的优先级设置为低 (250)。这将在设计过程中将其固定到位并满足 IB,但不会阻止 TextView 根据其内容自动调整大小。
您的 Storyboard现在应该如下所示(我将 View 背景设置为蓝色,以便我们可以看到布局):
现在,在您的 View Controller 代码中,您需要:
class StackTVViewController: UIViewController {
@IBOutlet var textViewLeft: UITextView!
@IBOutlet var textViewRight: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
textViewLeft.isScrollEnabled = false
textViewRight.isScrollEnabled = false
}
}
现在,在 viewDidLoad()
中添加两行来更改 TextView 中的文本:
class StackTVViewController: UIViewController {
@IBOutlet var textViewLeft: UITextView!
@IBOutlet var textViewRight: UITextView!
override func viewDidLoad() {
super.viewDidLoad()
textViewLeft.isScrollEnabled = false
textViewRight.isScrollEnabled = false
textViewLeft.text = "The left-side text field now has short text."
textViewRight.text = "Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur."
}
}
注意:此时,您甚至可以编辑 TextView ,当您添加/删除足够多的文本以更改换行时,它们的高度将自动调整!
关于ios - 保持 UIStackView 位于比例 UIStackView 内的正下方、顶部 UIStackView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49507347/
我的应用程序包含两部分:网络部分和 GUI。它的工作方式有点像浏览器 - 用户从服务器请求一些信息,服务器发回一些代表某些 View 的数据,然后 GUI 显示它。 现在我已经将网络部分实现为一项服务
给定表达式字符串exp,编写程序检查exp中“{”、“}”、“(”、“)”、“[”、“]的对和顺序是否正确。 package main import ( "fmt" stack "gi
我想要一个简单的脚本在后台保持运行。目前看起来像这样: import keyboard while True: keyboard.wait('q') keyboard.send('ct
我维护着许多 RedHat Enterprise Linux(7 台和 8 台)服务器(>100 台),其中包含不同的应用程序。为了保持理智,我当然会使用 Ansible 等工具,更重要的是,公共(p
我有一个 winforms 应用程序,它在网络服务请求期间被锁定 我已经尝试使用 doEvents 来保持应用程序解锁,但它仍然不够响应, 我怎样才能绕过这个锁定,让应用程序始终响应? 最佳答案 最好
我正在努力在我的项目中获得并保持领先的 0。以下是当前相关的代码: Dim jobNum As String jobNum = Left(r1.Cells(1, 1), 6) r2.Cells(1
我正在尝试在我的 Canvas 中定位元素相对于我的背景。 窗口被重新调整大小,保持纵横比。 背景随着窗口大小而拉伸(stretch)。 问题是一旦重新调整窗口大小,元素位置就会不正确。如果窗口的大小
一直在玩弄 Hibernate 和 PostgreSQL,试图让它按预期工作。 但是由于某种原因,当我尝试将具有@OneToMany 关系的对象与集合中的多个项目保持一致时,除了第一个项目之外,所有项
我想将某些东西提交到 github 存储库,但我(显然)没有任何权利这样做。我对那个 repo 做了一个分支,提交了我的更改并提交了一个 pull-request。 现在,问题是过了一段时间其他人已经
这是一个初学者问题,我仍在考虑“在 OOP 中”,所以如果我错过了手册中的答案或者答案很明显,我深表歉意。 假设我们有一个抽象类型, abstract type My_Abstract_type en
我们正在开展的一些项目在 jQuery 1.4.2 或更早版本中有着深厚的根基,介于缺乏最新版本的性能优势(或语法糖)、使用现已弃用的方法的耻辱以及部署一个积极维护的库的 3 年以上旧版本,升级现在迫
我看到在FMDB 2.0中,作者为线程添加了FMDatabaseQueue。例子是: // First, make your queue. FMDatabaseQueue *queue = [FMDa
我在 NSScrollView 中有一个 NSTableView。 NSTableView 的内容是通过绑定(bind)到 NSArrayController 来提供的,而 NSArrayContro
我在 TreeView 上有一个节点,我手动填充该节点并希望保持排序。通过用户交互,TreeViewItem 上的标题可能会更改,它们应该移动到列表中的适当位置。 我遍历一个 foreach,创建多个
我从主 NSWindow 打开一个 NSWindow。 DropHereWindowController *dropHereWindowController = [[DropHereWindowCon
我需要放置一个 form 3 按钮,当我单击该按钮时,将其显示为按下,其他按钮向上,当我单击另一个按钮时,它应该为“向下”,其他按钮应为“向上” 最佳答案 所有按钮的属性“Groupindex”必须设
我有一个使用 AnyEvent::MQTT 订阅消息队列的 perl 脚本。 目前我想要它做的就是在收到消息时打印出来。我对 perl 完全陌生,所以我正在使用它附带的演示代码,其中包括将 STDIN
如何在 .NET 应用程序中保持 TreeView 控件的滚动位置?例如,我有一个树形 View 控件,并经历了一个向其添加各种节点的过程,并将它们固定在底部。在此过程中,我可以滚动浏览 TreeVi
我维护了大量的 vbscripts,用于在我的网络上执行各种启动脚本,并且有一些我在几乎所有脚本中使用的函数。 除了复制和粘贴之外,有没有人对我如何创建可重用 vbscript 代码库有建议。我并不反
我有一些关于 Azure 自托管的问题。 假设用户 Alex 在物理机 M 上设置了 Windows 自托管代理。当 Alex 注销且计算机进入休眠状态时,代理将脱机。现在,当 Bob 登录同一台计算
我是一名优秀的程序员,十分优秀!