最近做一個(gè)視頻通話中截屏的功能
視頻sdk沒有現(xiàn)成的方法,自己踩了好多坑,終于找到了答案:
-(UIImage *)snapshotScreenInView:(UIView *)contentView {
CGSize size = contentView.bounds.size;
UIGraphicsBeginImageContextWithOptions(size, NO, [UIScreen mainScreen].scale);
CGRect rect = contentView.frame;
//? 自iOS7開始,UIView類提供了一個(gè)方法-drawViewHierarchyInRect:afterScreenUpdates: 它允許你截取一個(gè)UIView或者其子類中的內(nèi)容,并且以位圖的形式(bitmap)保存到UIImage中
[contentView drawViewHierarchyInRect:rect afterScreenUpdates:YES];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
同組的安卓同事還沒有解決,所以大家如果知道安卓的怎么解決不妨告訴我。