Size: a a a

2020 April 19

MP

Mike Price in SwiftBook
voodoo
при bounce scroll где-то меняется ширина/высота в фреймах? почему в CollectionView после баунса вверх у меня в верхней строке вместо 2х столбцов становится 3? этот автосайзинг уже напрягает, как с этим бороться
попробуй статичные размеры ячеек указывать (через мапу если разные)
или иди еще дальше и ковыряй кастомные лайауты для коллекций
источник

PP

Pavel Popravkin in SwiftBook
Mike Price
у меня обычно связка аломофаер + провайдер поверх него с подсосом токена из кейчена
кул, спасибо, очень помог :))))))
источник

v

voodoo in SwiftBook
Mike Price
попробуй статичные размеры ячеек указывать (через мапу если разные)
или иди еще дальше и ковыряй кастомные лайауты для коллекций
я через FlowLayout делаю
return CGSize(width: 150, height: 100)
но у него своё мнение видимо на  этот счёт
источник

v

voodoo in SwiftBook
почему именно при Bounce Scroll пересчитывается ширина, ну что за ересь
источник

US

Umidbek Saidov in SwiftBook
Как отображать CollectionView, а при нажатии на поиск, отображать tableview и фильтровать по нему (как на видео)?
источник

A

Alexandr✔️ in SwiftBook
Umidbek Saidov
Как отображать CollectionView, а при нажатии на поиск, отображать tableview и фильтровать по нему (как на видео)?
Менять flowlayout коллекции или накладывать под низ таблицу и скрывать/отображать их
источник

US

Umidbek Saidov in SwiftBook
Alexandr✔️
Менять flowlayout коллекции или накладывать под низ таблицу и скрывать/отображать их
Понятно, спасибо!
источник

1

13 in SwiftBook
Добрый день. А как заменить тип UserListModel на дженерик?

  func fetchData(url: String, complition: @escaping (_ profilesList:[UserListModel])->()) {
       
       
       guard let url = URL(string: url) else {return}

       URLSession.shared.dataTask(with: url) { (data, _, _) in
           
           guard let data = data else {return}
           
           do {
               let decoder = JSONDecoder()
               decoder.keyDecodingStrategy = .convertFromSnakeCase
               let profilesList = try decoder.decode([UserListModel].self, from: data)
               
               complition(profilesList)
               
           } catch let error {
               print(error)
           }
       } .resume()
   }
источник

1

13 in SwiftBook
Чтоб нужный тип модели можно было ставить
источник

🅰Б

🅰️лександр Б.... in SwiftBook
13
Добрый день. А как заменить тип UserListModel на дженерик?

  func fetchData(url: String, complition: @escaping (_ profilesList:[UserListModel])->()) {
       
       
       guard let url = URL(string: url) else {return}

       URLSession.shared.dataTask(with: url) { (data, _, _) in
           
           guard let data = data else {return}
           
           do {
               let decoder = JSONDecoder()
               decoder.keyDecodingStrategy = .convertFromSnakeCase
               let profilesList = try decoder.decode([UserListModel].self, from: data)
               
               complition(profilesList)
               
           } catch let error {
               print(error)
           }
       } .resume()
   }
func fetchData<T: Decodable>(url: String, complition: @escaping (_ profilesList:[T])->()) {
   
   
    guard let url = URL(string: url) else {return}

    URLSession.shared.dataTask(with: url) { (data, _, _) in
       
        guard let data = data else {return}
       
        do {
            let decoder = JSONDecoder()
            decoder.keyDecodingStrategy = .convertFromSnakeCase
            let profilesList = try decoder.decode([T].self, from: data)
           
            complition(profilesList)
           
        } catch let error {
            print(error)
        }
    } .resume()
}
источник

1

13 in SwiftBook
🅰️лександр Б.
func fetchData<T: Decodable>(url: String, complition: @escaping (_ profilesList:[T])->()) {
   
   
    guard let url = URL(string: url) else {return}

    URLSession.shared.dataTask(with: url) { (data, _, _) in
       
        guard let data = data else {return}
       
        do {
            let decoder = JSONDecoder()
            decoder.keyDecodingStrategy = .convertFromSnakeCase
            let profilesList = try decoder.decode([T].self, from: data)
           
            complition(profilesList)
           
        } catch let error {
            print(error)
        }
    } .resume()
}
Спасибо, в начале постоянно пропускаю.
источник

AB

Alexandr Belkovsky in SwiftBook
А что ты вообще хочешь сделать?
источник

AB

Alexandr Belkovsky in SwiftBook
Поменять позицию в базе?
источник

PM

Pavel Moroz in SwiftBook
Alexandr Belkovsky
А что ты вообще хочешь сделать?
Чтоб при переносе как на видео данные сохранялись
источник

PM

Pavel Moroz in SwiftBook
Alexandr Belkovsky
Поменять позицию в базе?
Да
источник

AB

Alexandr Belkovsky in SwiftBook
ну у тебя изначально уже не верный подход,  не факт что когда ты в базу что то кладешь, что ты получишь в том же порядке
источник

AB

Alexandr Belkovsky in SwiftBook
это целом неверно на такое надеятся. добавь поле order и меняй его и будет тебе счастье
источник

PM

Pavel Moroz in SwiftBook
Alexandr Belkovsky
это целом неверно на такое надеятся. добавь поле order и меняй его и будет тебе счастье
Типо позицию?
источник

AB

Alexandr Belkovsky in SwiftBook
типо её да, и по-моему у фетч реквеста есть уже опции для сортировки
источник

PM

Pavel Moroz in SwiftBook
Ещё одно поле в сущности?
источник