プロジェクトを表す約 100 の異なるビューで構成される Ipad アプリケーションを作成しています。プロジェクト間をすばやくスクロールできるようにするために、サムネイル ビューを作成しようとしています。問題は、UIViewController 自体が画面に表示される前に、サムネイル画像を作成する必要があることです。
現在、私はこのコードを使用しています:
ProjectViewController2 * page2 = [[ProjectViewController2 alloc]initWithNibName:@"ProjectViewController2" bundle:nil displayRightArrow:FALSE media:nil];
[page2 setMyMedia:media];
[page2 configurePage];
CGSize size = [page2.view bounds].size;
UIGraphicsBeginImageContext(size);
[[page2.view layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
NSString * filePath= [NSHomeDirectory() stringByAppendingFormat:@"/Documents/project/%@", [media fileName]];
[UIImageJPEGRepresentation(newImage, 1.0) writeToFile:filePath atomically:TRUE];
UIGraphicsEndImageContext();
これは機能します。UIViewController からスクリーンショットを取得しますが、メインの画像はありません。これらのイメージは NIB ファイルではなく、configurePage 関数で設定されています。NIB ファイルに設定されている背景色とメニューバーがサムネイルに表示されます。
UIViewController が画面に表示されていないため、何らかの描画関数が呼び出されていないため、画像が表示されないと思われます。
どんな助けでも本当に感謝しています!!!
ステイン