当前位置: 移动技术网 > 移动技术>移动开发>IOS > ios开发之UI基础

ios开发之UI基础

2018年11月25日  | 移动技术网移动技术  | 我要评论

ios开发之ui基础

1.初始阶段:

1.core data某些数据可以放在本地;

2.界面控制器相当于是界面管家;(管理view和view里面的东西)

2.启动过程

plist中设置了的话,加载main.storyboard,加载箭头指向的控制器,加载控制器中的view,显示给用户

is intial view controller

每个控制器都会有个类,也就是我们的viewcontroller已经和mainstoryboard绑定;

ibaction:

从返回值来看,是ibaction,类似与void;

只有返回是ibaction,才能与storyboard中控件进行连线。

一个控制器管理一个界面

ibaction:方法和storyboard中控件进行连线,相当于void

@property(nonatomic,weak) iboutlet uilabel *label;

iboutlet:修饰属性

ib:interface builder,xcode4开始,将ib整合到xcode中

self.redbutton.backgroundcolor=[uicolor redcolor];

判断一个对象能否连线给方法:

1.判断对象所在的类是否继承自uicontroller;

2.看对象是否有setevents

uibutton继承自uicontroller,uilabel继承自uiview

连线中的错误:

错误一:找不到键值对;

reason:[mainviewcontroller 0xxxx setvalue:forundefinedkey:]

原因:有多余连线,注释掉了,但是连线还存在;

错误二:找不到方法

reason:[mainviewcontroller clickbtn:]:unrecognized selector sent to instance 0xxxx];

控件

屏幕上所有的ui元素就是控件,也有人叫做视图、;

按钮(uibutton)、文本(uilabel)都是控件;

常见属性:

控件的共同属性有哪些?

尺寸

颜色

背景色

苹果将控件的共同属性都抽取到父类uiview中

每个控件其实都是一个容器,可以将其他控件放到该控件的内部,比较常见的还是将uiview作为容器;

每一个控制器都有一个uiview,控制器本身是不可见的,能够看到的是控制器的view,每一个控制器的都有uiview的属性,控制器中管理的所有子控件都是该控件的子控件;

@property(nonatomic,readonly)uiview *superview: 获取自己的父控件对象;

@property(nonatomic,readonly,copy)nsarray *subviews: 获取自己的父控件对象;

viewcontroller中的viewdidload方法和didreceivememorywarning时候;

加载控制器先调用loadview方法

然后是

//1.调用;2.控制权的view加载完毕的时候调用;3.控件初始化,数据初始化(懒加载);

viewdidload

然后viewwillappear:(bool)animated{

}

//1.系统调用;2.当控制器收到内存警告;3.去除一些不必要的内存,去掉耗时内存

viewdidreceivememory

控制器view的父控件是uiwindow

@property(nonatomic)nsinteger tag;

控件的id,父控件通过tag来找到对应的子控件

@property(nonatomic)cgaffinetranform transform;

控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)

uiview常见方法

addsubview:

remove

只有控制器里面能放属性;

控制器的属性关联着对象,通过控制器属性拿到这个对象做一些事情;

选项卡对象:

[uisegmentedcontrol *sg]=[uisegmentedcontrol alloc] initwithitems:@[@”哈哈”,@”呵呵”,@”嘻嘻”];

//从父控件中移除

[sg removefromsuperview];

//根据一个tag找到对应的控件(一般都是子控件)

[uiview *]viewwithtag:(nsinteger)tag;

uiview中坐标:

frame:

bounds:一般是改变宽度的;

center:中心点相对于左上角的点;

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网