草庐IT

AutoLayout

全部标签

ios - 使用 AutoLayout 使 UIView 高度适合其内容

我在MasonryDSL中使用iOS6AutoLayout功能在UITableViewCell中排列View。这是我想要实现的布局安排:containerView是一个虚拟容器,应动态调整其大小以适应其内容。在我当前的实现中,这就是我得到的:似乎containerView确实正确地垂直居中,但它的宽度和高度为零,因此无法正确显示。我如何指示containerView使其大小适合其内容?代码片段附在下面。谢谢!UITableViewCell初始化器-(id)initWithReuseIdentifier:(NSString*)reuseIdentifier{if(self=[superi

ios - 使用自动布局创建 UIButton 时,如何删除 UIButton 的顶部和底部填充?

当使用自动布局创建UIButton时,intrinsicContentSize始终根据不同的文本字体大小包含不同的顶部/底部填充。我尝试设置contentEdgeInsets,但它不适用于顶部/底部填充。如何将填充固定为0或任何常数值? 最佳答案 经过一些实验后,如果您尝试将contentEdgeInsets设置为全零,则会使用默认插图。但是,如果您将它们设置为接近零,它会起作用:button.contentEdgeInsets=UIEdgeInsets(top:0,left:0.01,bottom:0.01,right:0)看起来

ios - 使用自动布局创建 UIButton 时,如何删除 UIButton 的顶部和底部填充?

当使用自动布局创建UIButton时,intrinsicContentSize始终根据不同的文本字体大小包含不同的顶部/底部填充。我尝试设置contentEdgeInsets,但它不适用于顶部/底部填充。如何将填充固定为0或任何常数值? 最佳答案 经过一些实验后,如果您尝试将contentEdgeInsets设置为全零,则会使用默认插图。但是,如果您将它们设置为接近零,它会起作用:button.contentEdgeInsets=UIEdgeInsets(top:0,left:0.01,bottom:0.01,right:0)看起来

ios - 带有三个点的 UITextview 剪辑?

我有一个UITextView显示一些大小可以变化的动态内容。textview不允许滚动,它的大小与内容无关。考虑到它的自动布局约束,例如,TextView在iphone5和iPhone6plus上具有不同的水平尺寸。我想要的是我的文本在必要时被剪掉,末尾有3个点,例如“...”。(在UITextView下方有一个“更多”UIButton启动safari)我不确定是否有UITextView属性,或者我是否应该考虑一些代码来检查textview在当前情况下可以显示多少个字符,并修改我的字符串以相应地显示(剪切并附加@“…”).谢谢。 最佳答案

ios - 带有三个点的 UITextview 剪辑?

我有一个UITextView显示一些大小可以变化的动态内容。textview不允许滚动,它的大小与内容无关。考虑到它的自动布局约束,例如,TextView在iphone5和iPhone6plus上具有不同的水平尺寸。我想要的是我的文本在必要时被剪掉,末尾有3个点,例如“...”。(在UITextView下方有一个“更多”UIButton启动safari)我不确定是否有UITextView属性,或者我是否应该考虑一些代码来检查textview在当前情况下可以显示多少个字符,并修改我的字符串以相应地显示(剪切并附加@“…”).谢谢。 最佳答案

ios - UIViews 在标签栏下方结束

在我的应用程序中,我使用自动布局将标签与bottomLayoutGuide的标准量对齐。当应用程序首次启动时,一切都按照我的意愿进行布局,但是当我切换标签并返回时,标签在标签栏Controller下消失了。如果我旋转设备,横向View会正确显示,当我将它旋转回纵向时,View会恢复正常。我似乎无法弄清楚是什么导致了这种行为。感谢您的帮助! 最佳答案 发生这种情况是由于iOS7中的错误,底部布局指南错误地设置为高度0而不是标签栏的高度。旋转设备时,底部布局指南已正确设置。目前,您最好的选择是禁用底部扩展布局:-(UIRectEdge)

ios - UIViews 在标签栏下方结束

在我的应用程序中,我使用自动布局将标签与bottomLayoutGuide的标准量对齐。当应用程序首次启动时,一切都按照我的意愿进行布局,但是当我切换标签并返回时,标签在标签栏Controller下消失了。如果我旋转设备,横向View会正确显示,当我将它旋转回纵向时,View会恢复正常。我似乎无法弄清楚是什么导致了这种行为。感谢您的帮助! 最佳答案 发生这种情况是由于iOS7中的错误,底部布局指南错误地设置为高度0而不是标签栏的高度。旋转设备时,底部布局指南已正确设置。目前,您最好的选择是禁用底部扩展布局:-(UIRectEdge)

ios - UIPageViewController 未调整其 subview Controller 的大小

我有一个以编程方式设置的ViewController,它有一个子UIPageViewController。这会显示各种其他ViewController,这些ViewController也是以编程方式设置的。这些ViewController的View将translatesAutoresizingMaskIntoConstraints设置为YES,但页面ViewController的View使用约束将自身定位在顶ViewController中。问题是,当用户旋转设备时,页面ViewController会调整其框架的大小,但其subviewController不会。通过didRotateFr

ios - UIPageViewController 未调整其 subview Controller 的大小

我有一个以编程方式设置的ViewController,它有一个子UIPageViewController。这会显示各种其他ViewController,这些ViewController也是以编程方式设置的。这些ViewController的View将translatesAutoresizingMaskIntoConstraints设置为YES,但页面ViewController的View使用约束将自身定位在顶ViewController中。问题是,当用户旋转设备时,页面ViewController会调整其框架的大小,但其subviewController不会。通过didRotateFr

ios - 带有 AutoLayout 的 UITableViewCell - contentView 宽度约束失败

我在iOS8中遇到动态大小的tableViewCell问题。虽然它在视觉上看起来不错,但我得到的日志输出带有AutoLayout错误。我已将其简化为这个简单的示例。我正在向我的单元格添加一个UILabel:self.titleLabel=[[UILabelalloc]init];self.titleLabel.translatesAutoresizingMaskIntoConstraints=NO;self.titleLabel.numberOfLines=0;self.titleLabel.lineBreakMode=NSLineBreakByWordWrapping;[self.c