シンプルな写真日記です。写真を選んでキャプションを追加し、一緒に保存して、ユーザーが印刷できるようにします。おそらくこれは正しいアプローチではないかもしれませんが、いくつかのガイダンスを使用できることがいくつかあります: (1) 画像とテキスト データを一緒に保存して印刷可能にする方法、(2) 複数の写真/エントリ間に改行を入力してそれらを区切る方法のキャプション、および(3)すべてのファイル識別などを繰り返さないように、画像とキャプションのキャプチャを一緒に行う方法はありますか。現在、画像は保存されていますが、保存されていませんキャプション。これらは混合型であることがわかりますが、解決策はわかりません。コーディング初心者。
- (void)viewDidLoad
{
[super viewDidLoad];
// User picks a photo from the their phone camera roll
// Since iPhone simulator doesn't have photos, load and display a placeholder image
NSString *fPath = [[NSBundle mainBundle] pathForResource:@"IMG_1588" ofType:@"jpg"];
url = [NSURL fileURLWithPath:fPath];
[webView loadRequest:[NSURLRequest requestWithURL:url]];
//Save image to file
UIImage *image = [UIImage imageWithContentsOfFile:fPath];
NSArray *DocumentsDirectoryPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *path = [DocumentsDirectoryPath objectAtIndex:0];
NSString *filePath = [path stringByAppendingPathComponent:@"image.jpeg"];
NSData *data2 = [NSData dataWithData:UIImageJPEGRepresentation(image, 1.0f)];//1.0f = 100% quality
[data2 writeToFile:filePath atomically:YES];
}
- (IBAction)Button:(id)sender {
//Display keyboard and image caption from user
NSString *caption = enterCaption.text;
// Write the caption at the end of the image file
NSArray *DocumentsDirectoryPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *path = [DocumentsDirectoryPath objectAtIndex:0];
NSString *filePath = [path stringByAppendingPathComponent:@"image.jpeg"];
NSFileHandle *myHandle = [NSFileHandle fileHandleForWritingAtPath:filePath];
[myHandle seekToEndOfFile];
[myHandle writeData: [caption dataUsingEncoding:NSUTF8StringEncoding]];
[myHandle closeFile];
}
//Dismiss Keyboard
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
if ([[NSFileManager defaultManager] fileExistsAtPath:filePath], NO)
また、以下のコードのこのバージョンを動作させることもできませんでした。それにとても戸惑う。手がかりはありますか?
if ([[NSFileManager defaultManager] fileExistsAtPath:filePath], YES) {
//Writing image to the created file
NSFileHandle *myHandle = [NSFileHandle fileHandleForWritingAtPath:filePath];
// move to the end of the file to add data
[myHandle seekToEndOfFile];
NSLog(@"caption written on existing file =%@", caption);
[myHandle writeData: [caption dataUsingEncoding:NSUTF8StringEncoding]];
[myHandle closeFile];}
else {