【读书笔记】UIWindow-密码框
2015-07-28 19:02
387 查看
一,工程结构,如下图所示:
二,代码
PasswordInputWindow.h
PasswordInputWindow.m
三,运行效果。
参考资料 :
《iOS开发进阶》-唐巧
二,代码
PasswordInputWindow.h
#import <UIKit/UIKit.h> @interface PasswordInputWindow : UIWindow +(PasswordInputWindow *)shareInstance; -(void)show; @end
PasswordInputWindow.m
#import "PasswordInputWindow.h" @implementation PasswordInputWindow { UITextField *_textField; } +(PasswordInputWindow *)shareInstance { static id shareInstance=nil; static dispatch_once_t onceToken; dispatch_once(&onceToken,^{ shareInstance=[[self alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; }); return shareInstance; } -(id)initWithFrame:(CGRect)frame { self=[super initWithFrame:frame]; if (self) { UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(10, 50, 200, 20)]; label.text=@"请输入密码"; [self addSubview:label]; UITextField *textField=[[UITextField alloc]initWithFrame:CGRectMake(10, 80, 200, 20)]; textField.backgroundColor=[UIColor whiteColor]; textField.secureTextEntry=YES; [self addSubview:textField]; UIButton *button=[[UIButton alloc] initWithFrame:CGRectMake(10, 110, 200, 44)]; [button setBackgroundColor:[UIColor blueColor]]; button.titleLabel.textColor=[UIColor blackColor]; [button setTitle:@"确定" forState:UIControlStateNormal]; [button addTarget:self action:@selector(completeButtonPressed:) forControlEvents:UIControlEventTouchUpInside]; [self addSubview:button]; self.backgroundColor=[UIColor yellowColor]; _textField=textField; } return self; } -(void)show { [self makeKeyAndVisible]; self.hidden=NO; } -(void)completeButtonPressed:(id)sender{ if ([_textField.text isEqualToString:@"abcd"]) { [_textField resignFirstResponder]; [self resignFirstResponder]; self.hidden=YES; }else{ [self showErrorAlertView]; } } -(void)showErrorAlertView { UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:nil message:@"密码错误,正确密码是abcd" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil]; [alertView show]; } @end
三,运行效果。
参考资料 :
《iOS开发进阶》-唐巧
相关文章推荐
- IOS--UI--LessonDataBase
- UIAlertController的使用二
- 【IOS】 遍历info 所有内容 && 唯一的节能设备UUID
- iOS 在UILabel显示不同的字体和颜色(转)
- 将GPIUmage集成到项目中
- UIAlertController的用法
- iOS UI 第二课 UITextField UIButton
- iOS-UI-04 沙盒 归档 解归档
- 黑马程序员——自学总结(七)图形用户界面GUI
- Mapped Statements collection does not contain value for
- easyui form表单提交中文乱码
- apue-第十章 信号 笔记
- SpannableStringBuilder
- 232 Implement Queue using Stacks
- Error running 'requirements_osx_brew_update_system '
- hdoj- Windows Message Queue
- hdoj- Windows Message Queue
- UI及美术部分资源命名规范:
- Windows Message Queue(优先队列)
- map容器按value值排序