【Autoresizing案例03-通过代码设置Autoresizing Objective-C语言】

一、通过代码实现Autoresizing

通知

1.好,那么,接下来,我们就给大家看一下,怎么来通过代码实现Autoresizing,

好,那么,接下来,我们为什么要说这个通过代码,实现Autoresizing,

那么,注意,我们能通过我们的storyboard来操作,就不要通过代码来实现,

以后的趋势,就是苹果建议我们全都使用storyboard,

点击,来实现,就不需要代码了,

不让你写代码了,

但是,现在为什么还要讲这个,

因为,你工作的时候,是不是很有可能,遇到,还是之前的项目吧,

遇到之前的项目,别人写代码,他是用代码来实现的,

那个时候,还么有storyboard,

它就通过代码来实现的,

你是不是得会改啊,

会改,所以说,目的是为了,还是,我们能,接手别人的项目,

所以,要给大家说一下,

如何通过代码来实现Autoresizing,

好,注意,给大家提醒一下,等会儿你课下,写这个案例的时候,一定要用纯代码的方式,创建每一个控件,

不要通过,拖的storyboard上,不要通过拖上来的控件,

拖上来的控件,会有一些默认的设置,这样的话,会影响你运行的效果,

所以说,你接下来,写代码,的时候,一定要像我一样,用纯代码的方式,来创建那几个子控件,

好,那么接下来,案例,

通知

案例3,是一个什么需求

注意听,案例3,是这样的一个需求,

1)首先,我要

通知

动态创建两个View,

一个是蓝色View

一个是红色View

蓝色View的宽度、高度,是200,

蓝色View距离X的距离,是0

距离Y的距离,也是0,

红色View呢,宽度是200,和蓝色View是不是一样的啊,

红色View,是在蓝色View里面的,红色View是蓝色View的子控件,

红色View的宽度,也是200,

红色View的高度,是50,

同时,红色View,紧贴住蓝色View的底边,

来显示,

是不是就像我们看到的这个效果一样,

通知

2)然后,接下来,在我们的这个控制器的View上,放一个按钮,

当点击按钮的时候,让蓝色View的高度,和宽度,累加,是不是让蓝色View的高度和宽度,都变大啊,

就外面这个蓝色View的高度、和宽度,都变大,

3)然后,要求实现:

红色View,不论蓝色View的高度和宽度,怎么变化,红色View,始终是紧贴蓝色View的底边,

并且,填充满这个宽度,来显示,

并且,红色View的高度,是不变的,

就是说,一开始是这个效果,当你点击按钮的时候,蓝色View变大,红色View,是不是始终贴住底边,来显示,并且随着蓝色View的宽度增加而增加,

红色View的高度,是不变吧,

通知

然后,接下来,我们就一起把这个来实现一下,

这个非常简单

通知

把这个,我就再给它建一个吧,这个不用了,

Name:002通过代码来实现Autoresizing

通知

好,先把屏幕大小改一下,

通知

改成3.5英寸,

好,接下来,我们现在,是不是要通过代码,动态创建两个View

二、通过代码来创建两个View

1.好,那么打开我们的控制器,

通知

在这个控制器的view,加载完毕的事件里面,

通知

我们要做的,就是创建一个蓝色的View,

//创建一个蓝色View

通知

//创建一个红色View

通知

UIView *blueVw = [[UIView alloc] init];

通知

蓝色View,是不是得设置背景色吧,

//设置背景色

通知

blueVw.backgroundColor = [UIColor blueColor ] ;

设置它的frame

//设置frame

是不是让我们能看到它啊,

注意,我说的,用了Autoresizing、Autolayout、不要设置frame,是指的:你如果通过Autoresizing、Autolayout、设置了这个,额,比如说,它的这个距离右边、距离,是不是相当于设置了它的X、和Y,了吧,

设置这个X、和Y以后,就没有必要再设置frame了,

但是,如果,比如说,你这里高度、和宽度、没有设置,

还是要通过frame,来设置,

就不是说,绝对的使用了Autoresizing、Autolayout、frame就绝对不能设置了,

不是这个意思,

是指的如果你通过Autoresizing、Autolayout、已经把这个frame里面,高、和宽、或者说,X、和Y、设置好以后,

就不需要重复

猜你喜欢

转载自blog.csdn.net/madoca/article/details/132058416