Ios 如何将保存按钮设置为swift 5?
我正在为iOS创建一个壁纸应用程序。我已经创建了一个UIImageView,但是我一直在保存图像。我已解决权限问题,但无法让用户保存图像。我创建了保存按钮本身,但我不知道如何从用户的图像库中的图像数组中保存任何图像 以下是我目前的代码:Ios 如何将保存按钮设置为swift 5?,ios,swift,Ios,Swift,我正在为iOS创建一个壁纸应用程序。我已经创建了一个UIImageView,但是我一直在保存图像。我已解决权限问题,但无法让用户保存图像。我创建了保存按钮本身,但我不知道如何从用户的图像库中的图像数组中保存任何图像 以下是我目前的代码: class ViewController: UIViewController { @IBOutlet var imageview: [UIScrollView]! @IBOutlet weak var saveButton: UIButton
class ViewController: UIViewController {
@IBOutlet var imageview: [UIScrollView]!
@IBOutlet weak var saveButton: UIButton!
@IBAction func saveButtonPressed(_ sender: UIButton) {
// TODO: - How to save the image here
}
let scrollView: UIScrollView = {
let scroll = UIScrollView()
scroll.isPagingEnabled = true
scroll.showsVerticalScrollIndicator = false
scroll.showsHorizontalScrollIndicator = false
scroll.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height)
return scroll
}()
var imageArray = [UIImage]()
func setupImages(_ images: [UIImage]){
for i in 0..<images.count {
let imageView = UIImageView()
imageView.image = images[i]
let xPosition = UIScreen.main.bounds.width * CGFloat(i)
imageView.frame = CGRect(x: xPosition, y: 0, width: scrollView.frame.width, height: scrollView.frame.height)
imageView.contentMode = .scaleAspectFit
scrollView.contentSize.width = scrollView.frame.width * CGFloat(i + 1)
scrollView.addSubview(imageView)
//scrollView.delegate = (self as! UIScrollViewDelegate)
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
view.addSubview(scrollView)
imageArray = [#imageLiteral(resourceName: "1"),#imageLiteral(resourceName: "10"),#imageLiteral(resourceName: "9"),#imageLiteral(resourceName: "8"),#imageLiteral(resourceName: "3")]
setupImages(imageArray)
}
}
类ViewController:UIViewController{
@iBCROLLVIEW:[UIScrollView]!
@IBVAR弱保存按钮:UIButton!
@iAction func SaveButton已按下(\发送方:UIButton){
//TODO:-如何在此处保存图像
}
让滚动视图:UIScrollView={
让滚动=UIScrollView()
scroll.isPaginEnabled=true
scroll.showsVerticalScrollIndicator=false
scroll.showshorizontalscrolindicator=false
scroll.frame=CGRect(x:0,y:0,宽度:UIScreen.main.bounds.width,高度:UIScreen.main.bounds.height)
返回卷轴
}()
var imageArray=[UIImage]()
func setupImages(images:[UIImage]){
对于0..中的i,您需要添加一个函数:
func saveImage(image: UIImage) -> Bool {
guard let data = UIImageJPEGRepresentation(image, 1) ?? UIImagePNGRepresentation(image) else {
return false
}
guard let directory = try? FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false) as NSURL else {
return false
}
do {
try data.write(to: directory.appendingPathComponent("fileName.png")!)
return true
} catch {
print(error.localizedDescription)
return false
}
}
然后在保存按钮中按下
:
let success = saveImage(image: imageArray[0])
print("Did \(success ? "" : "not ")store image successfully")
您需要添加一些逻辑来实际选择图像。对不起,我是新来的!!是的,关于使用UIImageWriteToSavedPhotosAlbum,但我只想有人告诉我,在滚动后点击保存当前图像时,如何创建保存按钮?要使该按钮可点击并提供保存操作,应该编写哪些代码我找不到类似的文章有帮助……我已经复制了我所有的代码,这样你就可以看到我的所有代码。你是否愿意使用Firebase保存此图像?如果是,我有足够的代码。如果你有一个新问题,请不要编辑你当前的问题和代码-提出一个新问题。如果没有出现ui按钮,则与此无关第一个问题是保存图像。很可能你的IBOutlet实际上没有连接到任何东西。