これは、迅速ではあまり良くない人からの質問として考えてください:)。画像。ギャラリーに画像を保存して表示する際に問題が発生する
func saveImage(image: UIImage, path: String) -> Bool {
let jpgImageData = UIImageJPEGRepresentation(image, 1.0)
do {
try jpgImageData?.write(to: URL(fileURLWithPath: path), options: .atomic)
} catch {
print(error)
}
return (jpgImageData != nil)
}
func getDocumentsURL() -> NSURL {
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
return documentsURL as NSURL
}
func fileInDocumentsDirectory(filename: String) -> String {
let fileURL = getDocumentsURL().appendingPathComponent(filename)
return fileURL!.path
}
しかし、私の問題はthis..Iだけではないんです。didFinishPickingMediaWithInfo
で私はまた、これらの機能を抱えているので...
var imageArray = [UIImage]()
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let image = info[UIImagePickerControllerOriginalImage] as? UIImage {
UIImageWriteToSavedPhotosAlbum(image, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
imageArray.append(image)
for i in 0..<imageArray.count {
imageView.image = imageArray[i]
imageView.contentMode = .scaleAspectFit
let xPosition = self.view.frame.width * CGFloat(i)
imageView.frame = CGRect(x: xPosition, y: 0, width: self.imageScrollView.frame.width, height: self.imageScrollView.frame.height)
imageScrollView.contentSize.width = imageScrollView.frame.width * (CGFloat(i + 1))
imageScrollView.addSubview(imageView)
}
}
self.dismiss(animated: true, completion: nil)
}
ような配列に画像を追加していますギャラリーから選択された1つの画像だけを表示したい。ギャラリーから複数の画像を1つずつ選択して配列に格納し、それらをすべて水平スクロール形式で表示したいとします。この目的のために、私は画像を取るためにscrollview
を設定しています(didFinishPickingMediaWithInfo
で与えられるように)
多分私も画像を読む必要があります。しかし、どうやってそれを行うことができるのか分かりません...助けてください!
このリンクを参照することができます。https://stackoverflow.com/questions/20756899/how-to-select-multiple-images-from-uiimagepickercontroller – DHEERAJ
@DHEERAJ迅速なライブラリは、迅速な3 .. : – bws
ライブラリの1つhttps://stackoverflow.com/a/20756957/1088836を使用して、時間ごとに複数の画像を選択し、CollectionViewを使用して水平に表示してください。 – mbelsky