У меня есть UITableViewController, и когда я нажимаю на него, он будет показывать DetailViewUIController. Я хочу добавить функциональность, которая, когда я нахожусь в DetailViewUIController, и я проведите по экрану вправо, она покажет DetailViewUICконтроллер следующего элемента, и когда он останется, отобразится предыдущий элемент.Как построить контроллер просмотра swipe в swift
Я нахожу ссылку, которая делает это быстро. Но он имеет только 3 статических контроллера subview. https://medium.com/swift-programming/ios-swipe-view-with-swift-44fa83a2e078
Количество записей в моем TableView может быть довольно долго, как я могу сделать то же самое, динамически, т.е. без статического количество subviewcontroller создано и добавить 'addChildViewController?
Update:
Еще раз спасибо @rdelmar за вашу помощь.
У меня возникли проблемы с получением 'set contentOffset представления коллекции (ширина коллекции) * selectedRow' для работы.
В моей функции prepareForSegue, я добавил:
x = Float(indexPath.row) * 375.0
var point = CGPointMake(CGFloat(x), 0)
println ("***x=")
println (x)
detailController.collectionView?.setContentOffset(point , animated: false)
где detailController является UICollectionViewController.
и в
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as DetailViewCell
// Configure the cell
println("DetailViewController in cellForItemAtIndexPath()")
println(indexPath.row)
cell.myitem = allItems[indexPath.row]
возвратной клетке }
И я всегда вижу cellForItemAtIndexPath пытается получить 0-й элемент из allItems (то есть целые коллекции всех моих объектов.
Поэтому setContentOffset() не меняет то, что я показываю в подробном представлении, независимо от того, какой элемент я нажимаю в своем TableView для запуска подробного просмотра.
Любая идея решить эту проблему?
спасибо.
Спасибо. Я создаю CollectionViewController и XCode создает CollectionView внутри CollectionViewController в StoryBoard. Но по умолчанию размер ячейки 50 х 50. Как я могу сделать ячейку того же размера, что и экран? – hap497
@ hap497. Вы можете просто перетащить угол в раскадровке или задать размер в инспекторе размеров для вида коллекции. Вы также можете установить его в коде с свойством itemSize. – rdelmar
Спасибо, снова. Еще один вопрос. Пользователь может щелкнуть 5-й элемент в моем представлении таблицы, чтобы запустить Детальный просмотр. Как мое представление диспетчера представлений деталей будет отображать представление коллекции в пятый элемент при его первом запуске? и проведите по экрану влево, покажите 6? – hap497