storyboard怎么让UIView自适应屏幕大小

如题所述

storyboard约束布局
1,如果是从代码层面开始使用Autolayout,需要对使用的View的translatesAutoresizingMaskIntoConstraints的属性设置为NO.
即可开始通过代码添加Constraint,否则View还是会按照以往的autoresizingMask进行计算.
而在Interface Builder中勾选了Ues Autolayout,IB生成的控件的translatesAutoresizingMaskIntoConstraints属性都会被默认设置NO.
2,值得注意的是,添加约束之前一定要将子视图优先addSubview到父视图中,否则在添加约束时会产生编译器警告.
而我们在理解的时候,可以通过这种方式来理解.item1.attribute = multiplier ⨉ item2.attribute + constant,比如看下面的代码

[objc] view plaincopy
UIView *newView = [[UIView alloc]init];
newView.backgroundColor = [UIColor redColor];

[self.view addSubview:newView];

// self.view.translatesAutoresizingMaskIntoConstraints =NO;

newView.translatesAutoresizingMaskIntoConstraints =NO;

NSLayoutConstraint *constraint = nil;

constraint = [NSLayoutConstraint constraintWithItem:newView
attribute:NSLayoutAttributeLeading
relatedBy:NSLayoutRelationEqual
toItem:self.view
attribute:NSLayoutAttributeLeading
multiplier:1.0f
constant:20];
[self.view addConstraint:constraint];

constraint = [NSLayoutConstraint constraintWithItem:newView
attribute:NSLayoutAttributeTrailing
relatedBy:NSLayoutRelationEqual
toItem:self.view
attribute:NSLayoutAttributeTrailing
multiplier:1.0f
constant:-20];
[self.view addConstraint:constraint];

constraint = [NSLayoutConstraint constraintWithItem:newView
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:self.view
attribute:NSLayoutAttributeTop
multiplier:1.0f
constant:80];
[self.view addConstraint:constraint];

constraint = [NSLayoutConstraint constraintWithItem:newView
attribute:NSLayoutAttributeBottom
relatedBy:NSLayoutRelationEqual
toItem:self.view
attribute:NSLayoutAttributeBottom
multiplier:1.0f
constant:-20];
[self.view addConstraint:constraint];
温馨提示:内容为网友见解,仅供参考
无其他回答

Storyboard 使用 Scrollview的正确方法
为UIView添加约束:按住键盘的Control键,把UIView拖向Content Layout Guide,在弹出弹框后松手,然后按住键盘的Command键,多选leading \/ top \/ trailing \/ bottom这4个约束。为UIView添加这4个约束后,在UIView的属性控制器里面,把4个约束的Constant值都设置为0 然后我们把这个UIView的名字改成“Con...

如何用storyboard实现app用户引导界面的功能
1.拖一个navigationController到StoryBoard里,然后设置这个navigationController为initial view controller 2.为上图中的rootViewController创建一个对应的类,并在里面的viewDidLoad方法里添加如下语句 \/\/ 获取storyboard var storyBoard = UIStoryboard(name: "Main", bundle: nil)\/\/ 隐藏导航栏 self....

在storyboard对控件用了约束,怎样在代码中重新设置控件的frame_百度知...
storyboard中有一个scene,其UIViewController对应的class是VC1,其上有各种控件并且配置好了各种outlet, 只用代码写一个VC1的子类VC2,不用在storyboard里新建vc2对应的scene(因为界面完全一样),就可以直接用代码使用VC2

怎么用storyboard创建uicollectionviewcontroller
首先在Xcode中创建一个单视图应用。在第二个窗格中,选择Use Storyboards、Use Automatic Reference Counting以及Choose iPad as the target device复选框并点击Next按钮,然后再选择想要保存的位置。1、编辑 storyboard 打开 MainStoryboard.storyboard文件并删除其中唯一的视图控制器。从对象库中拖出一个U...

如何对使用了autolayout的UIView添加动画
选取完成日期后点击生日日期按钮或者完成按钮整个 view向下缩回,同时date picker向下滑出可视范围。二、实现细节 首先来看一眼storyboard中view的层级结构:如下图所示,从图中我们可以看到,整个view的布局相当简单,就两级:根view和我们的 date picker view,其中date picker view包含了一个完成按钮和...

为什么iOS开发不需要Storyboard
简单理解来说,可以把StoryBoard看做是一组viewController对应的xib,以及它们之间的转换方式的集合。在StoryBoard中不仅可以看到每个ViewController的布局样式,也可以明确地知道各个ViewController之间的转换关系。现在StoryBoard面临的最大问题就是多人协作。因为所有的UI都定义在一个文件中,因此很多开发者个人...

如何用代码控制以不同屏幕方向打开新页面
给 Main.storyboard 拖入一个 View Controller,新建一个继承自 UIViewController 的类,名为 SecondViewController,然后将两者绑定。之后给新建的这个 View Controller 赋予 StoryBoard ID 值 “secondVC”:简单 Google 便可以得到代码方式指定横屏打来新页面的方式:

解决聚爆屏幕适配的办法
解决聚爆屏幕适配的结局办法是SizeClasses的使用。根据百度百科查询,SizeClasses使用iOS8中新增了SizeClasses特性,他是对当前所有iOS设备尺寸的一个抽象,我们可以单独在storyboard或xib中设置UIView的自动布局约束,甚至某一个button是否显示都是能轻松实现的。

ios 怎么从一个uiview 跳转到一个uiviewcontroller
跳转是在控制器之间发生的,应该是由一个控制器跳转到另一个控制器,跳转后就可以把当前的控制器默认的View添加到窗口上,而不是由UIView跳转到控制器,不要犯这样的错;控制器跳转办法:1、用UINavigationController 的pushViewController 2、用self的presentViewController 3、再就是用storyBoard的segue...

storyboard.main文件被误删除了,新建了一个拖拽连不上控件咋办_百度知 ...
(1)直接使用鼠标右键可以直接缩放storyboard的缩放比例。当然你也可以用触摸板使用2根手指缩放。。(2)拖拽控件绑定到代码中,不一定要从设计界面的控件中进行拖拽,也可以直接从左侧的列表中拖拽,这样会更加清晰方便。。(3)如何添加修改超过一屏的控件。我们把控件拖拉到界面上,只能设置一屏的控件...

相似回答