UI-基础控件

学习UI两天后基本掌握了一些UI的基本控件用法。先说明一下,我学的是iOS 不是IOS,不是ios,也不是IoS等等款七八糟的写法。

下面既是我对简述也是自己对这两天学习的回顾:(以下所有代码全是在xcode上可运行的,我用的是xcode7.2)

先说UIWindow:

1.UIWindow: 在一个程序中有且只有一个主window

 1>取消程序的可视化入口,Main.sb

 2>创建主window对象

我们创建主 window,使其大小和屏幕一样

UIScreen 系统屏幕类

self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];

给你创建的窗口填颜色 UIcolor 系统的颜色类

_window.backgroundColor =[UIColor blueColor];

//让window 显示,并成为主窗口 并 显示

[_window makeKeyAndVisible];

4.设置window主窗口

在xcode7 之后 必须设置rootViewController,否则,在该方法结束的时候,会崩溃

_window.rootViewController = [[UIViewController alloc]init];

 3>UIwindow 继承于UIView

综上所述,开始一个需要UI设计布局的程序时,啥都不用想,只要建好工程并在AppDelegate.m的文件里找到:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

return YES;

}

然后再 { 之后开始新建我们的主窗口,即主Window对象:

(1)UIScreen 系统屏幕类

self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];

2)给你创建的窗口填颜色 UIcolor 系统的颜色类

_window.backgroundColor =[UIColor blueColor];

(3)让window 显示,并成为主窗口并显示

[_window makeKeyAndVisible];

(4).设置window主窗口

注意:(在xcode7 之后 必须设置rootViewController,否则,在该方法结束的时候,会崩溃)

_window.rootViewController = [[UIViewController alloc]init];


 2.UIView (

 UIView 与NSObject相似,是UI阶段的根类,大部分控件继承与UIView

首先我们先要添加一个UIView,方法如下:

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];

接着去给这个UIView添加背景色

view.backgroundColor = [UIColor greenColor];

让我们直接将UIView加到_Window上

[_window addSubview:view];

遇到UIView的子类,都看完一使用以上方式创建和显示

 这个UIView在屏幕中显示为矩形,因为在创建的识货我在其中定义了四个数值(0,0,100,100)分别是(x,y,width,heigh)

在这里值得一说的是这个坐标系。我们在数学的学习中也接触过坐标系,但千万不要以为是一样的 完全是两个概念得坐标系。

iOS系统坐标系

1.与数学中的坐标系不同 ,y轴的正方向是向下的

2.原点是屏幕的左上角

接着说我们的UIView

UIView的基本属性

UIView *testView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];

[_window addSubview:testView];

背景色

testView.backgroundColor = [UIColor cyanColor];

alpha 透明度0。0~1.0 默认值 1.0

testView.alpha = 0.2;

3.tag 标记(编号)(默认为0)

testView.tag = 1000;

根据tag获取到对应的view

UIView *view1 = [_window viewWithTag:1000];

知道怎么设计view了 我们就说说视图层级的关系

先做出三个视图

UIView *firstView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 80, 80)];

firstView.backgroundColor = [UIColor orangeColor];

UIView *secondView = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 80, 80)];

secondView.backgroundColor = [UIColor redColor];

UIView *lastView = [[UIView alloc] initWithFrame:CGRectMake(20, 20, 80, 80)];

lastView.backgroundColor = [UIColor blackColor];

addSubview(添加视图)

[_window addSubview:firstView];

insterSubview:atIndex(插入视图,到指定下标)

NSLog(@"%@",_window.subviews);

[_window insertSubview:secondView atIndex:2];

insterSubview:aboveSubview(插入视图,到指定视图的上面)

[_window insertSubview:lastView aboveSubview:firstView];

insterSubview:belowSubview(插入视图,到指定视图的下面)

[_window insertSubview:lastView belowSubview:secondView];


视图说的差不多了 ,下面回忆一下UILable

什么是 UILable 说白了就是负责显示文本的

如果没有自己的初始化方法,则使用父类的

UILabel *lable = [[UILabel alloc] initWithFrame:CGRectMake(20, 100, 300, 100)];

lable.backgroundColor = [UIColor yellowColor];

[_window addSubview:lable];

让我们看看 lable的属性

 1.text

lable.text = @"我叫王煌,我很热;看能否兼顾和欧文哦啊;的看来是你发几个户外;日历卡价格和锐拼接开关后唯品;人均国内宏观;";

 2.textColor 文本颜色

lable.textColor = [UIColor lightGrayColor];

3.font 默认值 17

lable.font = [UIFont systemFontOfSize:40];

lable.font = [UIFont boldSystemFontOfSize:40];

.textAlignment 对齐方式 默认对齐方式NSTextAlignmentLeft

lable.textAlignment = NSTextAlignmentRight;

5.numberOfLines

不确定行数时,给0

lable.numberOfLines = 0;

6.换行模式,。。。位置 lineBreakMode

lable.lineBreakMode = NSLineBreakByCharWrapping;

7.阴影颜色

lable.shadowColor = [UIColor redColor];

lable.shadowOffset = CGSizeMake(2, 4);

静态的一些控件差不多说到这,下面说说那个按钮,就是button

什么叫UIButton呢?

直接点就是用来点击的

//UIButtonTypeSystem系统按钮类型

定义一个button

UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];

给按钮设计颜色

button.backgroundColor = [UIColor purpleColor];

[_window addSubview:button];

定义button的位置

button.hl_x = 150;

button.hl_y = 300;

button.hl_height = 100;

button.hl_width = 100;

[_window addSubview:button];

//给Button添加事件

[button addTarget:self action:@selector(buttonClicked) forControlEvents:UIControlEventTouchUpInside];

//给button添加文字

[button setTitle:@"你点我啊~" forState:UIControlStateNormal];

[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];

还要在}之外给button定义好buttonClick的方法


次外还有个可以直接显示文字的控件就是UITextField

UITextField

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(150, 450, 100, 100)];

textField.backgroundColor = [UIColor yellowColor];

[_window addSubview:textField];

1.给输入框附了初值

textField.text = @"文字";

2.text.Color 文字颜色

textField.textColor = [UIColor blackColor];

 3.borderStyle 边缘样式

//UITextBorderStyleNone 无

//UITextBorderStyleLine 有边缘线

//UITextBorderStyleBezel

//UITextBorderStyleRoundedRect 边缘圆角

textField.borderStyle = UITextBorderStyleLine;

4.placeholder 占位字符

//当text、不为空时,placeholder 是不显示的

textField.placeholder = @"请输入你的爱好";

5.clearsOnBeginEdtting

textField.clearsOnBeginEditing = YES;

//command + K 显示、收起键盘

textField.delegate = self;

但在}之外要声明这个textfield的功能

//开始编辑前

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {

//return YES 可以编辑

//return NO 不可以编辑

return YES;

}

//已经开始编辑

- (void)textFieldDidBeginEditing:(UITextField *)textField {

}

- (void)textFieldDidEndEditing:(UITextField *)textField {

}

- (BOOL)textFieldShouldReturn:(UITextField *)textField {

//处理点击return的时候,需要进行的操作

//回收键盘

return YES;

}

以上就是我目前掌握的一些基础控件,UIWindow,UIView,UIButton, UITextField,UILable

在知道以上控件后,我们只要记住怎么实用就好,首先要声明一下,定义初始化,然后设置颜色,位置,大小,或者一些细节上的问题,最后在表明一下 这个控件是现实在哪个视图上面的就好了!

你可能感兴趣的:(UI-基础控件)