iOS UI-自动布局(Autoresizing)

 1 //
 2 //  ViewController.m
 3 //  IOS_0115_buzhi
 4 //
 5 //  Created by ma c on 16/1/15.
 6 //  Copyright (c) 2016年 博文科技. All rights reserved.
 7 //
 8
 9 #import "ViewController.h"
10
11 @interface ViewController ()
12 @property (nonatomic, strong) UIView *myView;
13
14
15 @end
16
17 @implementation ViewController
18
19 - (void)viewDidLoad {
20     [super viewDidLoad];
21
22     UIView *blue = [[UIView alloc] init];
23     blue.frame = CGRectMake(0, 0, 200, 200);
24     blue.backgroundColor = [UIColor blueColor];
25     [self.view addSubview:blue];
26     self.myView = blue;
27
28     UIView *red = [[UIView alloc] init];
29     red.backgroundColor = [UIColor redColor];
30     red.frame = CGRectMake(0, blue.frame.size.height-50, blue.frame.size.width, 50);
31     [blue addSubview:red];
32
33     UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
34     [btn setFrame:CGRectMake(self.view.center.x - 50, self.view.center.y + 150, 50, 50)];
35     [btn setBackgroundColor:[UIColor purpleColor]];
36
37     [self.view addSubview:btn];
38
39     [btn addTarget:self action:@selector(change) forControlEvents:UIControlEventTouchUpInside];
40
41     //设置autoresizing(前提取消autolayout)
42     //设置显示规则,只能按照父控件来设置参照
43     red.autoresizingMask = UIViewAutoresizingFlexibleTopMargin |UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
44
45     /*
46      位枚举
47      UIViewAutoresizingNone                 = 0,
48      UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,距离父控件的右边是固定的
49      UIViewAutoresizingFlexibleWidth        = 1 << 1,宽度随着父控件变化而变化
50      UIViewAutoresizingFlexibleRightMargin  = 1 << 2,距离左边是固定的
51      UIViewAutoresizingFlexibleTopMargin    = 1 << 3,距离下边是固定的
52      UIViewAutoresizingFlexibleHeight       = 1 << 4,高度随着父控件变化而变化
53      UIViewAutoresizingFlexibleBottomMargin = 1 << 5距离上面是固定的
54
55      Autoresizing的弊端
56      在storyboard中演示一个blueView左边和底部与父控件间距固定20,高为50
57      右边有一个redView它的右边和底部与父控件间距也是固定为20
58      两个View等宽,等高,
59      redView离blueView之间的间距永远是20.演示不能做出这个效果,然后引入Auto Layout
60
61      */
62 }
63
64 - (void)change
65 {
66     CGRect frame = self.myView.frame;
67     frame.size.width +=20;
68     frame.size.height +=20;
69     self.myView.frame = frame;
70
71 }
72
73 - (void)didReceiveMemoryWarning {
74     [super didReceiveMemoryWarning];
75     // Dispose of any resources that can be recreated.
76 }
77
78 @end
时间: 2024-10-20 19:36:59

iOS UI-自动布局(Autoresizing)的相关文章

IOS开发-自动布局Autoresizing和Autolayout

苹果的自动布局有两种: (1)Autoresizing (2)Autolayout 下面先介绍Autoresizing: 在开始使用前,我们要对xcode进行设置,因为默认xcode是打开Autolayout的,按照下面两张图就能打开Autoresizing了. 然后按照下图,选到对应选项卡就能使用autoresizing的功能了. 现在用autoresizing做一个练习,让一个控件始终在父控件右下角,如下图设置对应 的view就可以了:(点击就可以取消或者添加) 这样运行就行了.方框外面是控

iOS的自动布局

iOS的自动布局 一.StoryBoard和Xib的简介 在这之前先简略介绍一下Xib/nib和StoryBoard. Xib/nib其实可以认为是一样的,nib是iOS3.0前的产物,它的本质是一个装着可执行二进制文件的文件夹.Xib的本质则是一个xml类型的描述文件,可以实现可视化的编程.两者在在UIViewController的生命周期方法loadView方法前都会转换成可执行的nib文件. StoryBoard是多个Xib的集合的描述,也是xml格式的. Storyboard和Xib的区

IOS Ui控件 修改位置和尺寸,代码添加控件

所有的UI控件最终都继承自UIView,UI控件的公共属性都定义在UIView中, UIView的常见属性 UIView *superview; 获得自己的父控件对象 NSArray *subviews; 获得自己的所有子控件对象 NSInteger tag; 控件的ID(标识),父控件可以通过tag来找到对应的子控件 CGAffineTransform transform; 控件的形变属性(可以设置旋转角度.比例缩放.平移等属性) CGRect frame; 控件所在矩形框在父控件中的位置和尺

iOS之自动布局

iOS的自动布局技术一直都是前端开发所必不可少的,它能使我们开发出来的项目更加规范美观,同时也更加灵活 ,接下来笔者就介绍一下自动布局常用的几种方式,供大家参考~~ 方法一:storyboard 从一开始做iOS开发,只考虑适配4s,直接把坐标,长宽都写成固定值. 之后考虑适配5s,在界面上设定好一 bbs.chinaacc.com/forum-2-26/topic-5619705.html bbs.chinaacc.com/forum-2-26/topic-5619701.html bbs.c

iOS 之自动布局

     项目要做iPhone版和iPad的适配,就找了一些资料 关于iOS的自动布局,学习的一些收获以及心得给大家分享一下.       xib的布局就不说了,就是线的连接,主要分享一下纯代码的一些自动布局的学习心得.       Autolayout的强大是毋庸质疑的,当你熟悉了它之后,你肯定会觉得它很方便的实现布局,布局将会比使用frame的绝对坐标时还方便.      UIView *superview = self; UIView *view1 = [[UIView alloc] in

【腾讯TMQ】解放程序猿(媛)的双手—iOS UI自动化测试

解放程序猿(媛)的双手-iOS UI自动化测试 前言 随着移动互联网时代的蓬勃发展,移动终端的自动化测试也在业界日益活跃,总体来看在Android平台上的自动化工具和实践比较多,但是说到iOS平台无论从自动化工具的数量还是质量上就陡降了.究其原因,无外乎是iOS系统的封闭性,加上相对Android用户的数量少,导致对这个平台系统的自动化进展缓慢,据笔者了解到的情况,很多iOS平台的测试人员还处于纯手工测试模式,自动化程度和Android平台无法相论,更别提和PC端相比了. 然而越是困难的事,越是

ios UI数据库 sqlite小型数据库的增、删、改、查、排序

#import "table.h" @implementation table // 1.创建表 每一列之间用',',如果存在就不创建 create table if not exists t_class( class_id integer primary key autoincrement, class_name varchar, person_count integer default 0) // 1.1// 删除表 drop table if exists t_person //

iOS UI框架

iOS UI 框架          启动引导页面 +  主界面 文件下载 UIFrame

iOS UI Tab开发

iOS UI Tab开发(iOS 8) tab这种样式,类似于单选,可以叫radio-style,这是一个现在主流的layout-design,它让APP内容结构清晰,开发分工逻辑明确,经典的就是微信,时钟等 综述一下: 1.UITabBarController继承UIViewController,是一个ViewController container 2.UITabBarController拥有一个(readonly)的TabBar,TabBar拥有一到多个TabBarItem 3.每一个It

IOS UI多线程 NSThread 下载并显示图片到UIImageView

效果图 @property (weak,nonatomic)IBOutletUILabel *downLabelInfo; @property (weak,nonatomic)IBOutletUIImageView *imageView; @end @implementationViewController - (void)viewDidLoad { [super viewDidLoad]; NSString *url  [email protected]"http://d.hiphotos.b