2016-05-18 8 views
1

Я работаю над приложением, которое требует от пользователей показывать на карте, например, когда пользователь регистрируется в приложении, он загружает свое изображение при отправке изображения к серверу вместе с изображением I масштабирую изображение до 0,1, чтобы его размер мог быть уменьшен. Дело в том, что я должен показать изображение пользователя как this is the base image on which user picture will be pastedДобавление пользовательских изображений в маркер Карты Google IOS SDK увеличивает количество памяти

Код для вставки пользовательского изображения для этого маркера я использовал code`

-(UIImage*) drawImage: (UIImage*) fgImage 
      inImage:(UIImage*) bgImage 
      atPoint:(CGPoint) point 
{ 
     UIGraphicsBeginImageContextWithOptions(bgImage.size, FALSE, 0.0); 
     [bgImage drawInRect:CGRectMake(0, 0, bgImage.size.width, bgImage.size.height)]; 
     [fgImage drawInRect:CGRectMake(point.x, point.y, fgImage.size.width, fgImage.size.height)]; 
     UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
     UIGraphicsEndImageContext(); 
     return newImage; 
} 

fgImage пользователем рис изображения и bgImage является базой изображений. Эта функция возвращает мне полное изображение с зеленым маркером и закругленным изображением пользователя. После этого я прохожу это изображение Карта Маркер

marker.icon = [self drawImage:[self makeRoundedImage:img radius:25] inImage:markerImage atPoint:CGPointMake((markerImage.size.width/2)-25, (markerImage.size.width/2)-25)]; 

Проблема я столкнулся, я создал 70 тестирования пользователей и App памяти увеличивается до 100 МБ с таким количеством пользовательских маркеров на нем. Пожалуйста, предложите мне лучшее решение для решения этой проблемы. Спасибо.

+0

эй хасан, не могли бы вы объяснить мне, как вы получили этот маркер с закругленным изображением? –

ответ

0

Если несколько маркеров используют одно и то же изображение, убедитесь, что они ссылаются на один и тот же объект, а не на несколько экземпляров одного и того же содержимого. Вы также можете проверить решение для этого issue.

Также проверьте это SO question для получения дополнительной информации.