iOS中UIWindow妙用(一) App 的密码保护功能
来源:互联网 发布:google chrome翻墙mac 编辑:程序博客网 时间:2024/04/27 17:32
我们知道UiWindow 继承自UIView,所以UIWindow 除了具有UIView 的所有功能外,还有一些特有的属性方法,最常用的就是程序刚刚启动时,调用UIwindow的makeKeyAndVisible使整个程序可见。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindowalloc]initWithFrame:[UIScreenmainScreen].bounds];
viewcontroller = [[ViewControlleralloc]init];
self.window.rootViewController =viewcontroller;
[self.windowmakeKeyAndVisible];
return YES;
}
所以UIWindow的主要作用:
1,作为UIView 的最顶层容器,包含应用显示所需要的所有的UIView。
2.传递触摸消息和键盘事件给UIView
下面说一下跟这篇博客密切相关的一个属性 windowLevel
UIKIT_EXTERN constUIWindowLevel UIWindowLevelNormal;
UIKIT_EXTERN constUIWindowLevel UIWindowLevelAlert;
UIKIT_EXTERN constUIWindowLevel UIWindowLevelStatusBar;
其中UIWindowLevelNormal 的值使0, UIWindowLevelAlert 的值是2000,UIWindowLevelStatusBar的值是1000
下面开始我们今天要实现的功能
所谓密码保护,就是在App进入后台后,重新进入App中的时候需要输入一个通行的密码进入App这个密码可以和用户的登录密码不一致,用来保护用户的的个人信息,防止用户的手机不在身边的时候被人偷看,或者手机丢失后,敏感信息的泄漏,例如挖财,就有这样的功能,所以一般涉及到钱,敏感个人信息的App都应该有这样的功能
首先自定义个一个UIWindow 的子类
@interface PassWordInputWindow :UIWindow
+(PassWordInputWindow *)sharedInstance;
-(void)show;
@end
其中 +(PassWordInputWindow *)sharedInstance; 是一个创建单例的方法
具体实现如下:
+(PassWordInputWindow *)sharedInstance
{
staticid sharedInstance =nil;
staticdispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedInstance = [[selfalloc]initWithFrame:[UIScreenmainScreen].bounds];
});
return sharedInstance;
}
-(void)show
{
self.windowLevel =UIWindowLevelAlert;//最顶层显示
[selfmakeKeyWindow];
self.hidden =NO;
}
具体的demo实现如下;
demo下载地址
- iOS中UIWindow妙用(一) App 的密码保护功能
- iOS 继承 UIWindow 的密码保护功能
- UIWindow的妙用(二) 制作App的屏幕保护功能
- 利用UIWindow实现密码保护功能
- iOS中UIWindow的用法(一)
- iOS中UIWindow的获得
- iOS中UIWindow的创建和删除
- java中接口的妙用(一)
- iOS开发中UIWindow
- ios uiwindow 的用法
- iOS 数据持久化(扩展知识:模糊背景效果和密码保护功能)
- ios中创建UiWindow不显示的原因
- iOS中关于UIWindow和statusbar的设置
- 解决iOS开发中App启动广告的功能
- iOS开发中App启动广告的功能
- iOS 中 CAtextLayer 类的妙用 -
- IOS的UIWindow和UIview
- iOS—UIWindow的详情
- 获取鼠标hover表格的行列位置
- Linux - FTP命令使用详解
- 10 第十天【健身】
- 【Android 很进阶】android OOM理解以及相关方法分析
- xcode6 新建Pch文件
- iOS中UIWindow妙用(一) App 的密码保护功能
- mondrian 生成图表 XY轴数据过多
- 东莞已摘黄帽 东莞为什么会被叫做性都?
- JDBC 3种获得mysql插入数据的自增字段值的方法
- veste barbour homme the mother Chen Fengju two cronies to pick up one by one
- fib数列性质
- 2015红帽网上高峰论坛学习心得
- 串结构练习——字符串连接
- 1023. 组个最小数