ниже Изображение После редактирования изображения, когда я нажимаю кнопку общего доступа/сохранения, как добавлять изображения в массив. я должен отображаться в виде таблицы и сохранять его локально.Как добавить изображения в Array ios?
ответ
Вы можете преобразовать UIImage в NSData так:
Если PNG изображение
UIImage *image = [UIImage imageNamed:@"imageName.png"];
NSData *imageData = [NSData dataWithData:UIImagePNGRepresentation(image)];
Если JPG изображение
UIImage *image = [UIImage imageNamed:@"imageName.jpg"];
NSData *imageData = UIImageJPEGRepresentation(image, 1.0);
Добавить ImageData в массив:
[self.arr addObject:imageData];
Загрузка изображений из NSData:
UIImage *img = [UIImage imageWithData:[self.arr objectAtIndex:0]];
Не хранить изображения в массив или словарь, если вы не хотите, чтобы создать кэш, но кэш должен выселить их содержание в будущем.
Вы работаете на мобильном устройстве, которое, даже если оно мощное, не имеет того же оборудования вашего Mac.
Память - это ограниченный ресурс, и с ним следует руководствоваться суждением.
Если вы хотите кэшировать временные эти изображения по соображениям производительности, вы можете использовать NSCache, в основном работает как изменяемый словарь, но он является потокобезопасным.
Если вы хотите сохранить их локально, это нормально, но просто сохраните путь к ним в массиве.
- (NSString*) getDocumentsPath {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = paths[0]; //Get the document directory
return documentsPath;
}
- (NSString*) writePNGImage: (UIImage*) image withName: (NSString*) imageName {
NSString *filePath = [[self getDocumentsPath] stringByAppendingPathComponent:imageName]; // Add file name
NSData *pngData = UIImagePNGRepresentation(image);
BOOL saved = [pngData writeToFile:filePath atomically:YES]; //Write the file
if (saved) {
return filePath;
}
return nil;
}
- (UIImage*) readImageAtPath:(NSString*) path {
NSData *pngData = [NSData dataWithContentsOfFile:path];
UIImage *image = [UIImage imageWithData:pngData];
return image;
}
- 1. Как добавить изображения в Scrollview в iOS?
- 2. Добавить изображения в String/Array Android
- 3. Как я могу добавить разные изображения в combobox itemssource array
- 4. ios: как добавить uiLabel поверх фонового изображения?
- 5. iOS - Невозможно добавить объекты изображения в NSMutableArray
- 6. IOS - Добавить название изображения в UITabBarController
- 7. Невозможно добавить изображения в iOS Simulator
- 8. Множественный Mutable Array в IOS
- 9. Как добавить изображения в массив
- 10. Добавить в Избранное Array
- 11. Добавить в mysql array
- 12. Как добавить пользовательские изображения в аннотации в Mapview Swift ios?
- 13. Как добавить кнопку изображения в раскадровку iOS в Xamarin Designer?
- 14. Добавить в Array Слияние
- 15. Как добавить HUD? (iOS)
- 16. Добавить JLabel Array в JPanel
- 17. iOS добавить эффект выпрямления для изображения
- 18. C-array как свойство в iOS
- 19. iOS JSon parsing, array in array
- 20. Array: Swift and IOS
- 21. GMSPolygon array iOS crash
- 22. iOS rainbow colors array
- 23. Array не отображает изображения
- 24. Как сжать изображения в iOS?
- 25. Как добавить набор строк в String Array
- 26. Как добавить данные NSDictionary в NSMutable Array?
- 27. Как добавить String Array в объект JSON?
- 28. Добавить строку в multidementional array
- 29. Добавить в списокArray from Array
- 30. Xamarin.Forms C# найти доминирующий цвет изображения или изображения byte [] array
Вам необходимо сохранить изображение DATA в массиве, а не изображения. –
Не могли бы вы объяснить, как сохранить и получить в массиве, который я хочу отобразить в tableview? –
Вы можете иметь массив изображений 'var images_array = [UIImage]()' или массив данных 'var data_array = [NSData]()' и извлекать изображения, подобные этому 'let image = UIImage (data: data_array [i])'. –