Posiadam kody uicollectionview
z CustomCollectionViewLayout
, a wewnątrz mam a lot of small cells
, ale użytkownik nie może ich zobaczyć bez zoom
. Również wszystkie komórki można wybierać.Sposób powiększania UICollectionView
Chcę dodać mój widok kolekcji wewnątrz funkcji powiększenia!
Moje przejrzyste kody poniżej.
class CustomCollectionViewController: UICollectionViewController {
var items = [Item]()
override func viewDidLoad() {
super.viewDidLoad()
customCollectionViewLayout.delegate = self
getDataFromServer()
}
func getDataFromServer() {
HttpManager.getRequest(url, parameter: .None) { [weak self] (responseData, errorMessage) ->() in
guard let strongSelf = self else { return }
guard let responseData = responseData else {
print("Get request error \(errorMessage)")
return
}
guard let customCollectionViewLayout = strongSelf.collectionView?.collectionViewLayout as? CustomCollectionViewLayout else { return }
strongSelf.items = responseData
customCollectionViewLayout.dataSourceDidUpdate = true
NSOperationQueue.mainQueue().addOperationWithBlock({() -> Void in
strongSelf.collectionView!.reloadData()
})
}
}
}
extension CustomCollectionViewController {
override func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return items.count
}
override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return items[section].services.count + 1
}
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! CustomCollectionViewCell
cell.label.text = items[indexPath.section].base
return cell
}
override func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath cellForItemAtIndexPath: NSIndexPath) {
print(items[cellForItemAtIndexPath.section].base)
}
}
Również moi UICollectionView
właściwości układu poniżej poniżej można zobaczyć tam Wybrałem maxZoom 4
ale doesnt
mają żadnego działania!
Dziękujemy!
To pytanie może być pomocne: [Make collectionview zoomable] (http://stackoverflow.com/questions/13485617/make-uicollectionview-zoomable) – jojoT
@jojoT ty ale ta próbka obj-c i robienie szczypta zoomu każdy element i chcesz, aby zoom był szybki i obszarowy nie każdy element prosty zoom – SwiftDeveloper
to użytkownik dotyka widoku kolekcji, to komórka otrzyma powiększenie? Czy chodzi Ci o to, że po dotknięciu cały widok kolekcji został zamazany i dotknięta komórka wyświetliła się tylko pośrodku ekranu na widocznej szerokości i wysokości? –