8 Stimmen

Bitte übersetzen Sie dies unter Beibehaltung der gleichen HTML-Tags von "UIimagepicker controller image only selection" nach "UIimagepicker-Steuerung nur Bildauswahl".

Ich muss die Funktionalität implementieren, damit der Benutzer Fotos auswählen kann. Ich habe dies verwendet:

ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

Jetzt muss ich den Benutzer darauf beschränken, nur Fotos auswählen zu können und möchte nicht, dass Videos in der Liste angezeigt werden. Oder auf irgendeine Weise sollte es dem Benutzer überhaupt nicht möglich sein, Videos auszuwählen. Wie kann man das erreichen?

19voto

Alex Zak Punkte 1594

Im Grunde geht es darum, die „Medientypen“ festzulegen. Und glücklicherweise hat imagePicker dafür eine Eigenschaft namens „mediaTypes“, die ein Array von Medientypen empfängt, die zur Auswahl angezeigt werden sollen. :)

Noch glücklicher ist das Standardverhalten von ImagePicker, nur Bildtypen anzuzeigen.

Aber wenn Sie wirklich sicher sein wollen, können Sie dies tun:

[imagePicker setMediaTypes: [NSArray arrayWithObject:kUTTypeImage]];

und vergessen Sie nicht, am Anfang der Datei hinzuzufügen ... :)

#import 

Aber wirklich, ich denke, wir können Apple vertrauen, wenn sie sagen, dass es ihr Standardverhalten ist ... :)

18voto

Jeremy Brooks Punkte 579

Sie erhalten eine Compiler-Warnung über inkompatible Zeigertypen (zumindest in XCode 4), wenn Sie kUTTypeImage zu einem NSArray hinzufügen. Allerdings ist kUTTypeImage ein CFStringRef und laut der CFString-Dokumentation ist ein CFStringRef kompatibel mit NSString *. Daher, um den Compiler zufriedenzustellen, casten Sie kUTTypeImage zu einem NSString *:

picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage];

2voto

Phani Bob Punkte 667

UIImagePickerController wird standardmäßig nur für Bilder verwendet. Vermeiden Sie einfach die Angabe von Medientypen, dann werden nur Bilder zur Auswahl angezeigt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X