iOS 實現tableview,scrollview截圖長屏截圖 - (void)btnAction:(UIButton *)sender { {

代碼實現部分

- (void)btnAction:(UIButton *)sender {

UIImage* image = nil;
// 下面方法,第一個參數表示區域大小。第二個參數表示是否是非透明的。如果需要顯示半透明效果,需要傳NO,否則傳YES。第三個參數就是屏幕密度了,調整清晰度。
UIGraphicsBeginImageContextWithOptions(self.tableView.contentSize, YES, [UIScreen mainScreen].scale);

CGPoint savedContentOffset = self.tableView.contentOffset;
CGRect savedFrame = self.tableView.frame;
self.tableView.contentOffset = CGPointZero;
self.tableView.frame = CGRectMake(0, 0, self.tableView.contentSize.width, self.tableView.contentSize.height);
[self.tableView.layer renderInContext: UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();
self.tableView.contentOffset = savedContentOffset;
self.tableView.frame = savedFrame;

UIGraphicsEndImageContext();
if (image != nil) {
    //保存圖片到相冊
    UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);
}

}

指定回調方法

- (void)image: (UIImage *) image didFinishSavingWithError: (NSError *) error contextInfo: (void *) contextInfo

{

NSString *msg = nil ;
if(error != NULL){
    msg = @"圖片保存失敗" ;
}else{
    msg = @"圖片保存成功,可到相冊查看" ;
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"信息提示"
                                                message:msg
                                               delegate:self
                                      cancelButtonTitle:@"確定"
                                      otherButtonTitles:nil];
[alert show];

}

我的項目中實現的時候需要加上logo圖,對截圖做一個比例壓縮的話,如果不是寬高等比例壓縮,會出現圖片變的很模糊的鮮果

在此記錄一下.

歡迎指正!

毛姆說的,閱讀能爲自己築起一個避難所,幾乎可以避開生命中所有的災難。

歡迎關注我的微信公衆號:LDYG2017, 或掃描下方二維碼關注. 這裏會分享我的讀書筆記, 願你我共同進步.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章