DPScreenshots
仿新浪微博截图分享
先说一下,本人就在昨天刷微博的时候无意间截屏了一下发现了这样一个效果我就突发奇想仿着做一下,开题报告,终于经过一上午的努力第一版就诞生了,但是还有很多需要优化的地方,开题报告,大神们不喜勿喷啊!话不多说了,进入正题做这样的功能,主要分享部分,一个是截获会员的截屏事件,二是视图的添加一、获取会员的截屏事件目前有两种方式:
1.注册通知 iOS7提供一个崭新的推送方法:UIApplicationUserDidTakeScreenshotNotification。只要像往常一样订阅即可知道什么时候截图了。
注意:UIApplicationUserDidTakeScreenshotNotification 将会在截图完成之后显示。现在在截图截取之前无法得到通知。
希望苹果会在iOS8当中增加 UIApplicationUserWillTakeScreenshotNotification。(只有did, 没有will显然不是苹果的风格...)
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(userDidTakeScreenshot:)</br> name:UIApplicationUserDidTakeScreenshotNotification object:nil];</br>(void)userDidTakeScreenshot:(NSNotification *)notification
{
}
2.第二种是通过开源库ShotBlocker,但是需要获取会员的相册的权限
[[ShotBlocker sharedManager] detectScreenshotWithImageBlock:^(UIImage *screenshot) {
}
二、视图添加UIWindow *keyWindow=[[UIApplication sharedApplication]keyWindow];
DPScreenshotsPopView *popView=[DPScreenshotsPopView initWithScreenShots:screenshot selectSheetBlock:^(SelectSheetType type) {
[popView show];
[keyWindow addSubview:popView];