2013-12-11 3 views
-4

У меня есть следующий код, который я использую для хранения изображения в приложении iOS после съемки с камерой. Изображение должно иметь идентифицируемое имя, чтобы впоследствии его можно было найти для каждого контакта. Как я могу передать ему параметр или два, чтобы имя файла оказалось чем-то вроде firstname_lastname.jpg вместо newImage.jpg?Objective-C send параметр to void function

-(void)saveIMAGE { 

    NSData *imgView = UIImageJPEGRepresentation(imageView.image, 1.0); 

    NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *docPath = [path objectAtIndex:0]; 

    imgPathString = [docPath stringByAppendingPathComponent:@"newImage.jpg"]; 

    [imgView writeToFile:imgPathString atomically:NO]; 

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Image Saved" message:@"The Image Was Saved." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil]; [alert show]; 
} 
+0

Может кто-то по крайней мере объяснить вниз таким образом голоса Я хотя бы знаю, что я делаю неправильно, задавая свой вопрос? –

+0

Использовать как: '- (void) saveImage: (NSString *) imageName { ... imgPathString = [docPath stringByAppendingPathComponent: imageName]; ... } ' –

+0

Спасибо, почему пустые голоса? –

ответ

1

Update эта линия

imgPathString = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@%@.jpg",firstname,lastName]]; 

Измените метод, как:

- (void) saveImage :(NSString *)firstname withLastName :(NSString *)lastName 
{ 

     NSData *imgView = UIImageJPEGRepresentation(imageView.image, 1.0); 

     NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
     NSString *docPath = [path objectAtIndex:0]; 

     imgPathString = [docPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@%@.jpg",firstname,lastName]]; 

     [imgView writeToFile:imgPathString atomically:NO]; 

     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Image Saved" message:@"The Image Was Saved." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil]; 
     [alert show]; 

} 

и просто изменить вызов

[self saveImage:@"Scott" withLastName:@"Rowley"]; 
+0

Удивительный, спасибо большое. –

+0

Я запустил вызов с помощью переменных, но он работает отлично, спасибо снова. [self saveImage: artist_Name withLastName: artist_LastName]; –

Смежные вопросы