//
// 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)
}
}
}
// 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