2013-03-18 19 views
10

Bir görüntüyü, URL ve bazı metinlerle birlikte UIActivityViewController ile paylaşıyorum. Her şey harika çalışıyor, resim dosyası adı hariç her zaman 'Image-1' uzantısı olmadan. Bazı durumlarda bu, posta uygulamasında hiç bir uzantıya sahip olmayan bir görüntü açmayacak gibi büyük bir soruna neden olur.UIImage denetim dosyasının dosya adı UIActivityViewController ile gönder

Görüntü, uygulama tarafından üretilmektedir ve UIImage olarak bulunmaktadır.

Dosya adını kontrol etmenin ve görüntüye doğru uzantıyı eklemenin bir yolu var mı?

cevap

0

uygulama oluşturulan görüntü (UIImage başvuru), o zaman kodunun altına kullanabiliyorsanız: Bir ile kendi PNG format görüntü oluşturabilir benim projesi için aynı kodu kullanmış

[mailComposer addAttachmentData: UIImagePNGRepresentation(viewImage) mimeType:@"" fileName:@"myImage.png"]; 

UIImagePNGRepresentation() yöntemi.

JPEG görüntüsüne ihtiyacınız varsa UIImageJPEGRepresentation() yöntemini kullanın. Daha sonra yukarıdaki yöntemdeki dosya adını .jpg uzantısıyla değiştirin. daha ilgili ayrıntılar Her iki yöntem için

, UIKit Class Reference

+0

Teşekkürler! Bunu daha önce denedim ve sorunu posta uygulamasıyla düzeltti. Jpeg verilerini oluşturduktan sonra, dosya adını değiştirmeye nasıl devam edebilirim? "UIActivityViewController", eki adlandırmanın benzer bir yolu yoktur. –

+0

Burada filename özelliği içinde jpg'yi değiştirmek istiyorum. [MailComposer addAttachmentData: UIImageJPEGRepresentation (viewImage, 1.0f) mimeType: @ "" fileName: @ "myImage.jpg"]; – Mrunal

+0

Hope JPEG ayrıca sizin için çalışacaktır. – Mrunal

0

Sonra dosya adı veya bir UIImage ait kodlama türü cihazda bir dosyaya kaydedin etmektir kontrol etmek farkındayım ve tek yol beslemek bölümüne başvurun Dosyanın URL'si UIActivityViewController'a. Bunu yapmak için kullanabileceğiniz kod için this answer'a bakın. Bu yaklaşımın bazı belirgin dezavantajları vardır, ancak muhtemelen çoğu uygulama için yeterince iyi olacaktır.