Xcode (4.3 kullanarak) yeni bir modelim ve bir görüntünün aygıtın kamera rulosuna nasıl kaydedileceğinden emin değilim. Şimdiye kadar yaptığım her şey, görüntüyü kaydetmek için düğme için bir IBAction oluşturdu. Kullanıcının kamera rulosuna görüntü kaydetmek için hangi kitaplık yöntemini veya işlevini kullanabilirim?Bir resmi kamera rulosuna nasıl kaydedebilirim?
cevap
UIImageWriteToSavedPhotosAlbum()
işlevini kullanırsınız.
//Let's say the image you want to save is in a UIImage called "imageToBeSaved"
UIImageWriteToSavedPhotosAlbum(imageToBeSaved, nil, nil, nil);
Düzenleme:
UISaveVideoAtPathToSavedPhotosAlbum(videoPath, nil, nil, nil);
Örneğin, Instagram yüklemek için bir video kaydetmek isteyebilirsiniz:
//ViewController.m
- (IBAction)onClickSavePhoto:(id)sender{
UIImageWriteToSavedPhotosAlbum(imageToBeSaved, nil, nil, nil);
}
Referans olması için, benzer bir şekilde videoları kaydedebilirsiniz:
// Save video to camera roll; we can share to Instagram from there.
-(void)didTapShareToInstagram:(id)sender {
UISaveVideoAtPathToSavedPhotosAlbum(self.videoPath, self, @selector(video:didFinishSavingWithError:contextInfo:), (void*)CFBridgingRetain(@{@"caption" : caption}));
}
- (void) video: (NSString *) videoPath
didFinishSavingWithError: (NSError *) error
contextInfo: (void *) contextInfoPtr {
NSDictionary *contextInfo = CFBridgingRelease(contextInfoPtr);
NSString *caption = contextInfo[@"caption"];
NSString *escapedString = [videoPath stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]]; // urlencodedString
NSString *escapedCaption = [caption stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]]; // urlencodedString
NSURL *instagramURL = [NSURL URLWithString:[NSString stringWithFormat:@"instagram://library?AssetPath=%@&InstagramCaption=%@", escapedString, escapedCaption]];
[[UIApplication sharedApplication] openURL:instagramURL];
}
İşte bir cevap f veya Fotoğraflar çerçevesini kullanarak iOS8.
Objective-C:
#import <Photos/Photos.h>
UIImage *snapshot = self.myImageView.image;
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
PHAssetChangeRequest *changeRequest = [PHAssetChangeRequest creationRequestForAssetFromImage:snapshot];
changeRequest.creationDate = [NSDate date];
} completionHandler:^(BOOL success, NSError *error) {
if (success) {
NSLog(@"successfully saved");
}
else {
NSLog(@"error saving to photos: %@", error);
}
}];
Swift:
// Swift 3.0
import Photos
PHPhotoLibrary.shared().performChanges({
PHAssetChangeRequest.creationRequestForAsset(from: snapshot)
}, completionHandler: { success, error in
if success {
// Saved successfully!
}
else if let error = error {
// Save photo failed with error
}
else {
// Save photo failed with no error
}
})
İşte Apple belgelerine bir link bu.
Görüntüyü nasıl alabilirim url @ricardopereira –
@Mansuu Lütfen https://stackoverflow.com/a/37248867/3641812 adresinden bir göz atın. – ricardopereira
- 1. Oluşturulan GIF'i kamera rulosuna kaydeder misiniz?
- 2. Bir işlemi nasıl kaydedebilirim?
- 3. Webservice kullanarak resmi hızlıdan SQL Server veritabanına nasıl kaydedebilirim?
- 4. Cordova kamera resmi Blob nesnesi olarak çek
- 5. Bir işlev işaretçisini bir yapıya nasıl kaydedebilirim?
- 6. Kamera görüntüsünü izlemek için arka plan resmi/görünümü ayarlama?
- 7. Wix'te bir mülkün değerini nasıl kaydedebilirim?
- 8. Intellij'de Bir Sınıf Diyagramını Nasıl Kaydedebilirim?
- 9. Bir scala oyuncusu referansını nasıl kaydedebilirim?
- 10. Bir resmi nasıl döndürürüm?
- 11. Mevcut resmi bir JFrame'de düzenleme
- 12. C# daki süreyi nasıl kaydedebilirim?
- 13. Nesneleri Node.js'deki dosyalara nasıl kaydedebilirim?
- 14. Görüntüyü PIL ile nasıl kaydedebilirim?
- 15. ListView'ın kaydırma konumunu nasıl kaydedebilirim?
- 16. RESTful posta verilerini nasıl kaydedebilirim?
- 17. Kamera önizlemesi nasıl geliştirilir?
- 18. Kamera örneği nasıl kaydedilir?
- 19. Qt'deki bir resmi nasıl kırpabilirim?
- 20. Bir döndürücünün resmi nasıl değiştirilir
- 21. Terminalde bir resmi nasıl görüntüleyebilirim?
- 22. Bir resmi diğerine nasıl yerleştirebilirim?
- 23. Bir resmi nasıl yükler ve bu resmi (üretimde) gönderiyorsunuz?
- 24. Bir HTML öğesini bir JavaScript nesnesi olarak nasıl kaydedebilirim?
- 25. Html Resmi görüntünün resmi
- 26. Düzgün bir kamera nasıl takip edilir?
- 27. Koleksiyondaki tek bir öğeyi ne kaydedebilirim?
- 28. Kamera yakalama işlemi sırasında kamera ekranı yönünü nasıl kilitleyebiliriz?
- 29. Flutter'ı kullanarak yerel depolamaya nasıl kaydedebilirim?
- 30. android, bir kamera üzerine bir bakışta akışı önizleme
Diyelim ki '- (IBAction) onClickSavePhoto: (id) gönderen;' ViewController.h dosyasında, yukarıdakileri kullanarak ViewController.m dosyasına yerleştirmek için tam olarak neye ihtiyacım var? Tekrar çok teşekkürler! – user1470914
@ user1470914 Düzenlememe bakın. Ayrıca, görüntüyü kamera rulosuna kaydedilecek yer neresidir? Zaten uygulamanızın paketinde mi, yoksa kullanıcı bir fotoğraf çekiyor ve daha sonra kamera rulosuna kaydediliyor mu? – pasawaya
Sabrınız için teşekkürler qegal. Şu ana kadar bu konuyu tekrar gözden geçirme şansım olmadı. DÜZENLEME bize süper yardımcı. Resim, uygulamanın paketindedir. Uygulamada birkaç resim var ve bunlar küçük küçük resimler olarak görülebilir. Küçük bir küçük resim seçildiğinde, yeni bir görünüme gider ve tam ekran versiyonu görüntülenebilir. En üstteki nav'un sağ köşesinde "kaydet" yazan bir düğme var ve bu, görüntüyü aygıtın rulo rulosuna kaydetmek istediğim düğme ki duvar kağıdı olarak da uygulanabilir. Yardımınız ve sabrınız için tekrar teşekkürler (casperOne'un bunu neden kapattığından emin değil). – user1470914