StoryBoard 中的自定义 UITableViewCell AutoLayout 右对齐
Posted
技术标签:
【中文标题】StoryBoard 中的自定义 UITableViewCell AutoLayout 右对齐【英文标题】:Custom UITableViewCell AutoLayout right alignment in StoryBoard 【发布时间】:2015-09-23 02:11:50 【问题描述】:我想要(实际上不是)将UIButton
粘贴到UITableViewController
中UITableView
中的原型自定义UITableViewCell
的右侧(边距)边缘。我定义了 2 个约束:尾随空间到:Superview(内容视图)和顶部空间到:Superview。不得不说这在UIViewController
中工作得很好。但是当我在 iPhone5 模拟器上运行它时,我的UIButton
不在可见区域内。我可以在高分辨率设备模拟器上找到它,但它不应该在所有设备上都可见吗?
我已经看过 AutoLayout 教程(包括斯坦福课程和 HSE Swift 课程)和所有的谷歌,但坚持不懈:(
如果您能睁开我的眼睛看到UITableViewCell
AutoLayout 的特殊性,那就太好了。非常感谢!
UPD:我现在正在浏览其中一个 tuts,UITableViewCell
的行为与教程中的不同(!)似乎单元格不再适合UITableView
。我知道这看起来像是一个非常新手的问题(实际上我是),但它会是 Xcode7 或新更新的 ios9 中的问题吗?
【问题讨论】:
【参考方案1】:您是否对表格视图应用了约束,即前导尾随顶部和底部。
【讨论】:
就是这样!我将UITableView
放在场景(视图)上,定位它以使其覆盖整个场景。这样就不可能将新约束按 ctrl 拖动到超级视图,甚至无法意识到这个问题。在UITableViewController
中它默认工作,但在UIViewController
中不起作用。单元格被正确约束,但UITableView
超出了右边界。现在我通过右下角的图钉图标将其固定,瞧!感谢您的帮助!【参考方案2】:
首先清除该按钮的约束然后:-
如上图点击右栏和上栏然后点击添加2约束。这是你要找的吗?
【讨论】:
Chathuranga Silva,感谢您的回复,但它仍然不在可见区域内。看起来(我认为确实如此)约束工作正常,但单元格本身比屏幕宽度宽。或者UITableView
更宽。可能是新的 iOS9 或 Xcode7 问题,还是您的布局模拟正确?
删除那个按钮,新建一个按钮。然后按照上面的操作。有什么进展吗??
是的,我确实做到了,甚至还有一次。实际上我做了更多:我添加了 Detail / Disclosure 标志(在 Attribute Inspector 处检查)并且......我看不到它!除非我在 iPad Retina 上模拟。甚至这个标志也隐藏在屏幕右边缘之外((有什么想法吗?
感谢您的帮助!问题是UITableView
并没有被限制在场景中,并且显然不是原因与UITableViewController
一起正常工作,并且必须在UIViewController
中明确限制。以上是关于StoryBoard 中的自定义 UITableViewCell AutoLayout 右对齐的主要内容,如果未能解决你的问题,请参考以下文章
无法更改 Storyboard 中的自定义 UICollectionViewCell
如何在 Storyboard 中的自定义 UITableViewCell 中配置 UITableView?
从 StoryBoard 加载的自定义 UITableViewCell 未解除分配
使用从 Storyboard 定义的自定义 UITableViewController 和原型单元进行随机 UI 更新