[解決済み] iOSでプログラム的にスクリーンショットを撮る方法
2022-04-27 15:07:15
質問
画面上の画像のスクリーンショットを保存フォトライブラリに保存してほしい。
どのように解決するのですか?
この質問は非常に閲覧数が多く、多くの回答があり、さらにSwiftとObj-Cがあるので回答しています。
免責事項 これは私のコードではありません。 また、私の回答でもありません。 これは、ここにたどり着いた人がすぐに答えを見つけられるようにするためだけのものです。元の答えへのリンクがあるので、信用を与えることができます。 元の答えを使用する場合は、+1 で敬意を表してください!
#import <QuartzCore/QuartzCore.h>
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {
UIGraphicsBeginImageContextWithOptions(self.window.bounds.size, NO, [UIScreen mainScreen].scale);
} else {
UIGraphicsBeginImageContext(self.window.bounds.size);
}
[self.window.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSData *imageData = UIImagePNGRepresentation(image);
if (imageData) {
[imageData writeToFile:@"screenshot.png" atomically:YES];
} else {
NSLog(@"error while taking screenshot");
}
func captureScreen() -> UIImage
{
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, false, 0);
self.view.drawViewHierarchyInRect(view.bounds, afterScreenUpdates: true)
let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image
}
注 プログラミングのある自然として。 更新が必要な場合がありますので、編集するか、私に知らせてください。 *また、もし私が価値のある答えや方法を入れなかった場合は、遠慮なく私に知らせてください。
関連
-
[解決済み] Xcodeエラー "Could not find Developer Disk Image" が発生する。
-
IOSラーニングノート「このクラスはxxxのキーバリューコーディングに対応していません」問題解決
-
[解決済み] iOSまたはmacOSで、インターネット接続が有効かどうかを確認するにはどうすればよいですか?
-
[解決済み] iOSのステータスバーの文字色を変更する方法
-
[解決済み] HTML5/Canvas/JavaScriptを使用してブラウザ内のスクリーンショットを撮影する
-
[解決済み] iOSのバージョンを確認する方法を教えてください。
-
[解決済み] Androidでプログラム的にスクリーンショットを撮るには?
-
[解決済み] iOSシミュレータでスクリーンショットを撮る
-
[解決済み] UITextFieldの最大文字数を設定します。
-
[解決済み】iOSアプリの名前を変更する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
iOS classic error Undefined symbols for architecture XXX:
-
[解決済み] カスタムオブジェクトを含むNSMutableArrayをソートするにはどうすればよいですか?
-
[解決済み] UITableViewの選択を無効にするにはどうすればよいですか?
-
[解決済み] UIViewController のビューが表示されているかどうかを確認する方法
-
[解決済み] iOS 13 のフルスクリーンでモーダルを表示する
-
[解決済み] Unwind segueは何に使うのか、どう使うのか?
-
[解決済み] iOS Simulatorでネットワークを無効にすることは可能ですか?
-
[解決済み] UILabelで複数行のテキストを表示する
-
[解決済み] コア・データ エンティティの全インスタンスを削除する最短の方法
-
[解決済み] UIViewのスクリーンショットを撮るには?