Thursday, May 17, 2018

slider

//
//  HomeViewController.swift
//  lesdanseuses academy
//
//  Created by Neeraj on 5/15/18.
//  Copyright © 2018 Socialsoft4u. All rights reserved.
//

import UIKit

class HomeViewController: UIViewController, UIScrollViewDelegate{

    @IBOutlet weak var scrollView: UIScrollView!
 
    var image = UIImage()
    var urlArray = [String]()
    var imageArray = [UIImage]()
    var imageCache = NSCache<AnyObject, AnyObject>()
 
    override func viewDidLoad() {
        super.viewDidLoad()

        scrollView.frame = self.view.frame
     
        urlArray = ["http://placehold.it/600/92c952","http://placehold.it/600/771796","http://placehold.it/600/24f355","http://gamezs.esy.es/image/SampleJPGImage_5mbmb.jpg"]
     
        for i in 0..<urlArray.count {
            let position = self.scrollView.frame.width * CGFloat(i)
         
            let imageView = UIImageView(frame: CGRect(x: position, y: 0, width: self.scrollView.frame.width, height: self.scrollView.frame.height))
            imageView.contentMode = .scaleToFill
         
            let url = URL(string: urlArray[i])
            if let imageFromCache = imageCache.object(forKey: url as AnyObject) as? UIImage{
                imageView.image = imageFromCache
            } else {
                DispatchQueue.global().async {
                    let data = try? Data(contentsOf: url!)
                 
                    DispatchQueue.main.async {
                        imageView.image = UIImage(data: data!)
                        self.imageCache.setObject(UIImage(data: data!)!, forKey: url as AnyObject)
                    }
                }
            }
         
            scrollView.contentSize.width = self.scrollView.frame.width * CGFloat(i + 1)
            scrollView.addSubview(imageView)
        }
    }
 
}

No comments:

Post a Comment