草庐IT

AutoLayout

全部标签

iphone - NSLayoutConstraints 代码使 View 居中并保持其纵横比

我希望我的subview是一个以其父View顶部为中心的16:9矩形。换句话说,我希望它:与其父View一样宽,但不超过400像素(UI可以旋转为横向),当它比父View窄时水平居中,将其顶部固定到其父View的顶部,并且更改其高度以保持16:9的纵横比。这段代码几乎做到了,除了我很难使水平约束起作用并且没有超过或低于约束...-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheview.UIView*contentView=[[UIViewalloc]init];contentView.

ios - NSLayoutAttribute 的解释

我发现文档有点稀疏。这是一个例子NSLayoutAttributeTrailingThetrailingedgeoftheobject’salignmentrectangle.AvailableiniOS6.0andlater.DeclaredinNSLayoutConstraint.h特别是我想要解释所有这些NSLayoutAttributeLeftNSLayoutAttributeRightNSLayoutAttributeTopNSLayoutAttributeBottomNSLayoutAttributeLeadingNSLayoutAttributeTrailingNSLay

ios - 根据文本自动布局调整按钮大小并让文本字段填充可用空间

我正在开发一个使用自动布局的ios应用程序,我旁边有一个UITextField和一个UIButton。UIButton文本是动态改变的。它可以很短(3个字母)或很长(15个字母)我需要添加约束以实现以下目的:1)当我更改UIbutton文本时,我需要调整按钮大小以适应新文本2)UITextField应调整大小以占用按钮文本更改后剩余的可用空间我尝试执行以下操作(如图所示):为UITextView添加了前导约束到父View20为UIButton添加了尾部约束到父View20添加了它们之间的固定距离10但现在我一直在研究如何使UIButton随文本和文本字段调整大小以采用可用大小。感谢任何

ios - 在 iOS11 上,如何让 UIToolbar 调整所有项目的大小以适应?

在iOS10之前,一个UIToolbar在其项目之间具有灵活的空格键按钮项目会自动缩小字体,以便所有文本都显示在屏幕上。以下示例(iOS10):从XCode9开始,在模拟器上运行iOS11时,我的工具栏显示如下:不仅文本的字体大小没有减小,而且最后一个栏按钮项(没有文本,只有图像)也不见了。试图解决这个问题,我发现自iOS11以来,UIToolbar现在使用自动布局而不是框架。一些与此问题相关的帖子建议为项目创建约束,为项目指定宽度和/或高度。但是,我想要实现的是适合工具栏中的所有内容,即使这意味着减小字体大小。我不认为我可以通过编程方式设置固定宽度/高度。另外,这是在Storyboa

ios - 搜索栏与节标题 View 重叠

我将searchBar放在tableHeaderView中。在iphone6上一切正常,但在iphone5s上我得到了这个奇怪的结果?overridefuncviewDidLoad(){super.viewDidLoad()tableView.delegate=selftableView.dataSource=selftableView.sectionIndexColor=Constants.Colors.ThemeGreentableView.sectionIndexBackgroundColor=UIColor.clearColor()tableView.sectionIndexT

ios - 如何以编程方式从 UIView 获取约束

我想从UIView获取UILabel约束,但我无法获取任何约束。我像这样在CustomView.m中设置约束:-(id)initWithFrame:(CGRect)frame{self=[superinitWithFrame:frame];if(self){_titleLabel=[UILabelnew];[selfaddSubview:_titleLabel];}returnself;}-(void)layoutSubviews{[superlayoutSubviews];_titleLabel.translatesAutoresizingMaskIntoConstraints=NO

ios - 为什么我的 superview-with-subview 在模态呈现时会缩小(使用自动布局)?

我有一个拥有单个自定义View的ViewController;自定义View使用CoreGraphics绘制游戏板。(不涉及其他subview。)我设置了自动布局约束,以便游戏板填充其父View。当我将ViewController设置为RootViewController时,游戏板(和superView)就会填满屏幕,这是我的意图。然而,当我以模态方式呈现ViewController时,游戏板(和superView)缩小到无/最小,并且自动布局跟踪报告布局不明确。我写了一个简化的测试用例来说明这个问题。这是我的BoardViewController,它有一个绿色背景的顶级View,但创

ios - 使用自动布局实现按钮的网格布局

我正在尝试实现与Apple的内置计算器应用程序非常相似的按钮布局:我正在使用自动布局来定位按钮,并在每个按钮上绘制一个0.5像素的边框,旨在使按钮之间的间隙为1像素(例如calc应用程序,特写显示上方的像素,来自视网膜设备)。边框由:btn.layer.borderWidth=0.5f;btn.layer.borderColor=[[UIColorblackColor]CGColor];并且布局是使用InterfaceBuilder设置的。它几乎可以工作;但按钮之间的间隙存在一些差异-例如“1,2,3,thru”行与“4,5,6,and”行之间的间隙为2个像素,但“7”行之间的间隙,8

ios - 自动布局(约束)与自动调整大小掩码(Springs & Struts)

无论屏幕大小和方向如何,这些布局系统都可以帮助您调整大小。如果我有Autoresizingmask(Springs&Struts)之类的简单解决方案,我为什么要使用AutoLayout(Constraints)? 最佳答案 当我开始使用自动布局时,我也有同样的问题......AutoLayout可以完成Springs&Struts为我们提供的所有功能以及更多功能。AutoLayout可以根据需要应用于任何两个View,而不仅仅是像Springs&Struts这样的父subview层次结构。我们可以优先考虑约束并具有约束不等式。建议:

iOS 8 - 查找具有标识符的 UIView 的约束

我正在尝试在viewDidLoad中为iPhone4S、5、5S的ImageView更改约束:for(NSLayoutConstraint*constraintinlogoImage.constraints){if([constraint.identifierisEqualToString:@"logoTopIdentifier"]){constraint.constant=10;}}看起来它甚至没有在循环中迭代。有没有其他方法可以通过标识符获取特定约束? 最佳答案 您可以将Storyboard中的约束连接到您的ViewContro