主要内容:UIButton、UITextField、delegate
一、UITextField
UITextField(输入框):是控制文本输入和显示的控件
UILable和UITextField的区别是:UILable是不能输入文本,UITextField允许用户输入
创建UITextField的步骤:
1、申请空间并确定位置大小
2、设置相关属性
3、添加到主视图上
4、释放
常用方法:
文本显示:
| 属性名 | 描述 | 示例 |
| text | 要显示的文本的内容 | textField.text = @"用户名" ; |
| textColor | 文本的字体颜色 | textField.textColor = [UIColor redColor] ; |
| textAlignment | 文本的对齐方式 | textField.textAlignment = NSTextAlignmentLeft ; / / 左对齐 |
| font | 字体的大小 | textField.font = [UIFont fontWithName: @"Helvtica - Bold" size = 20.f ] ; / / 黑体 20号字体 |
| placeholder | 占位符(没有输入时,输入框内默认显示的文字) | textField.placeholder = @"请输入用户名"; |
输入控制:
| 属性名 | 描述 | 示例 |
| enabled | 是否允许输入 | textField.enabled = YES; / / 允许输入 |
| clearsOnBeginEditing | 再次输入时是否清空输入框内容 | textField.clearsOnBeginEditing = YES; / / 再次输入时清空输入框内的内容 |
| secureTextEntry | 内容是否为密文的形式 | textField.secureTextEntry = YES; / / 以密文的形式显示 |
| keyBoardType | 弹出键盘的样式 | textField.keyBoardType = UIKeyBoardTypeNumberPad; / / 数字键盘 |
| returnKeyType | 键盘右下角return按键的按钮类型 | textField.returnKeyType = UIReturnKeyDone ; / / 将键盘右下角return按键的按钮换为Done |
| inputView | 自定义输入视图 | textField.inputView = myInputView; |
| tag | 设置标签 | textField.tag = 1001; / / 设置标签为1001 |
外观控制:
| 属性名 | 描述 | 示例 |
| borderStyle | 边框样式(枚举值类型) | textField.borderStyle = UITextBoaderStyleRoundedRect ; / / 将边框设置为圆角矩形 |
| clearButtonMode | 清除按钮模式(枚举值类型) | textField.clearButtonMode = UITextFieldViewModeAlways ; / / 总是显示清除按钮 |
| leftView | 左视图 | textField.leftView = leftView; |
| leftViewMode | 左视图显示样式 | textField.leftViewMode = UITextFieldViewModeAlways ; |
| rightView | 右视图 | textField.rightView = rightView ; |
| rightViewMode | 右视图显示样式 | textField.rightViewMode = UITextFieldViewModeAlways ; |
二、UIButton
UIButton(按钮):是响应用户点击的控件,侧重于点按
创建步骤:
1、创建button对象
2、设置按钮的相关属性
3、为按钮添加事件
4、添加到父视图上
5、按钮无需释放
常用方法:
添加事件
| 方法名 | 描述 | 示例 |
| addTarget:action:forControlEvents: | 为按钮添加事件,指定按钮点击之后, 执行target的action事件 | [ loginButton addTarget:self action:@selector(login:) forControlEvents:UIControlEventTouchUpInside ] ; |
| removeTarget:action:forControlEvents: | 移除按钮的点击事件 | [ loginButton removeTarget:self action:@selector(login:) forControlEvents:UIControlEventTouchUpInside ] ; |
总结:
1、UIView是所有可视化视图的基类
2、UILable、UITextField、UIButton是具有特定外观特定功能的视图
3、UILable侧重于文本的呈现
4、UITextField侧重于输入
5、UIButton侧重于点击事件的处理
三、delegate
点击键盘return按钮实现键盘回收的步骤
1、将AppDelegate作为UITextField的delegate
2、AppDelegate.h文件接受UITextFieldDelegate协议
3、AppDelegate.m实现textFieldShouldReturn方法
代码示例:
AppDelegate.m
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[ textField resignFirstResponder ] ;
return YES;
}
四、iOS程序启动流程
无论任何一个程序,程序的入口都是main.m文件
int main(){
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
执行UIApplicationMain函数时,跳转到AppDelegate函数
UIApplicationMain在程序入口函数main函数中调用,主要实现了3个功能:
1、创建应用程序(UIApplication)实例
2、创建应用程序代理实例
3、建立事件循环(runloop,死循环,不断检测程序运行状态,是否被触摸、晃动等)
UIApplicationDelegate是一个OC的协议,里面的方法主要都与应用程序的运行状态有关
| 方法名 | 描述 |
| application:didFinishLaunchingWithOptions: | 告诉delegate程序即将启动完成,程序准备要运行(delegate实现这个方法时,要创建window对象,将程序内容通过window呈现给用户) |
| applicationDidBecomeActive: | 告诉delegate程序已经进入活跃状态(重新执行被暂停的程序) |
| applicationWillResignActive: | 告诉delegate程序即将进入非活跃状态(暂停游戏、结束timer等) |
| applicationDidEnterBackground: | 告诉delegate程序已经进入后台(存储用户数据,释放一些共享资源,停止timer等) |
| applicationWillEnterForeground | 告诉delegate程序即将进入前台(取消所有进入后台时暂停的任务) |
[self.window makeKeyAndVisible]; / / 让window变的可视,即显示window
1万+

被折叠的 条评论
为什么被折叠?



