テーブルをスクロールダウンすると、イメージとしてUITableViewをキャプチャするためのSwiftコードが動作しません。私は本質的にObjective-Cの答えを持っていますが、それをSwiftで動かすことはできません。現在、これは私がスウィフトに持っているものです。UITableViewをイメージとしてキャプチャする - スクロールする
func snapshotOfCell (inputView: UIView) -> UIView {
UIGraphicsBeginImageContextWithOptions(inputView.bounds.size, false, 0.0)
inputView.layer.renderInContext(UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext() as UIImage
UIGraphicsEndImageContext()
let cellSnapshot : UIView = UIImageView(image: image)
cellSnapshot.layer.masksToBounds = false
return cellSnapshot
}
私はthis答えを見つけたが、それはObjective-Cである:contentOffsetを使って、スクロールの問題を解決するよう
-(UIImage *) imageWithTableView:(UITableView *)tableView {
UIView *renderedView = tableView;
CGPoint tableContentOffset = tableView.contentOffset;
UIGraphicsBeginImageContextWithOptions(renderedView.bounds.size, renderedView.opaque, 0.0);
CGContextRef contextRef = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(contextRef, 0, -tableContentOffset.y);
[tableView.layer renderInContext:contextRef];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
。しかし、私は成功せずにそれを私のSwift機能に統合しようとしてきました。 Objective-CとSwiftの両方で良い人は誰ですか?ありがとう!
これは運がないとしようとしました。私のスウィフトコードのように動作します。テーブルがスクロールされていないときは正常に動作しますが、スクロールテーブルは正しく取り込まれません。 –
タブビューのスクリーンショットをある位置でスクロールした後に表示しますか? – Jeyamahesan
はい、申し訳ありませんが、私はそれを明確にしませんでした。途中で下にスクロールしてコードを実行すると、画像は現在多くの空白をキャプチャするように見えますが、正しくありません。私は画面に何が映っているかを写真に反映させたい。 –