UIImageView.Изображение към прикачен файл към имейл с MonoTouch

Нов съм в MonoTouch и се опитвам да изпратя имейл с изображение като прикачен файл, който потребителят ще опитоми от камерата или ще избере от галерията.

Създадох програмата и тя работи правилно (имам контролер за imageview, който зарежда изображение от uiimagepicker към imageview. След това извиквам MFMailComposeViewController, но не знам как да предам изображението от imageview към метода addAttachmentdata.

Предполагам, че първо трябва да запазя изображението от imageview като файл, но не знам как да го направя и не мога да намеря документация за него.


person gchristakis    schedule 03.02.2012    source източник


Отговори (1)


Първо трябва да превърнете UIImage в NSData, напр. като използвате AsPNG или AsJPG, след това използвайте правилния тип MIME за изображението. Ето един пример:

MFMailComposeViewController email = new MFMailComposeViewController ();
// any UIImage will do
UIImage img = UIImage.FromFile (".../anyimage.png");
email.AddAttachmentData (img.AsPNG (), "image/png", "image.png");
email.SetSubject ("Photo from my iPhone");
email.SetMessageBody ("Here's the attachment!", false);
controller.PresentModalViewController (email, false);

Забележка: "image.png" е предложено име на файл, дадено на софтуера за имейл на получателя (т.е. не е локален файл във вашето устройство и не е необходимо да съответства на нищо който съществува).

person poupou    schedule 03.02.2012
comment
да, но как ще превърна изображението от контрола на изображението в NSData? - person gchristakis; 03.02.2012
comment
съжалявам, сега видях вашата ЗАБЕЛЕЖКА, ще го пробвам и ще видя дали работи за мен - person gchristakis; 03.02.2012
comment
Вече имате този отговор в собствения си въпрос ;-) UIImageView.Image има Image свойство от тип UIImage. Така че imageView.Image.AsPNG () с ви връща NSData екземпляр, който можете да използвате в извикването на AddAttachmentData - person poupou; 03.02.2012
comment
Опитвам се, но се опитвам да разбера как да превърна изображението, което съществува в imageview, в NSData. Благодаря за вашият отговор - person gchristakis; 03.02.2012