185 похожих чатов

Друзья, подскажите, пожалуйста по работе с АПИ? По кнопке отправляю

данные в апи, они какое то время генерируются на свервере и возвращаются. После чего должна появиться вьюха с табличкой с этими данными. Но у меня либо табличка загружается раньше, чем данные возвращаются (и она, соотвественно, пустая), либо, если сунуть загрузку вью в DispatchQueue.main.async, так и не загружается. Где почитать, как с этим работать?

30 ответов

28 просмотров

Не используйте DispatchQueue попробуйте через async await

добавь параметр isLoading = true когда жмешь кнопку вызова апи - как апи закончит меняй его на isLoading = false == а табличку выводит только тогда когда isLoading = false

На SwiftUI пишете?

Lis- Автор вопроса
.juss
добавь параметр isLoading = true когда жмешь кноп...

звучит хорошо, а какой может быть маркер, что она закончена?

Lis- Автор вопроса
Lis- Автор вопроса
Lis
на uikit)

Тогда не могу помочь? Я не знаю как с ним работать

Lis
тааак, поняла, почитаю!)

Почитайте, он удобнее чем Dispatch, но объяснить не смогу так как объяснил выше - не знаю UIKit

Lis- Автор вопроса
.juss
как апи выдаст ответ обратно

вроде поняла, сейчас попробую, спасибо!)

Lis
вроде поняла, сейчас попробую, спасибо!)

ну типо как result придет от апи - проверить что он не пуст и данные что надо - меняем isLoading = false

Egor Ivanov
Не используйте DispatchQueue попробуйте через asyn...

Не использовать dispatch, потому что он неудобный?

Egor Ivanov
Ну я его не использую

ну так это твоя проблема

Lis- Автор вопроса
свифка (макс)
не надо

а что советуете?))

Lis
а что советуете?))

оставить привычную асинхронность. DispatchQueue, OperationQueue и тд

а можете показать код?

Lis- Автор вопроса
свифка (макс)
а можете показать код?

Не знаю, будет ли понятно)

Lis- Автор вопроса
Lis
screenshot Не знаю, будет ли понятно)

если коротко, я делаю фотку с паспортом, и нажимаю кнопку «отправить». в это время фотка отправляется на сервер для распознавания и возвращается в виде данных для открытия таблички. данные приходят, но с небольшой задержкой

Lis- Автор вопроса
свифка (макс)
а дату выводили?

ну я вижу маркер, что данные пришли, уже после загрузки пустой таблички)

Lis
ну я вижу маркер, что данные пришли, уже после заг...

в покажите TextRecResultVC а именно поле passportData

Lis
ну я вижу маркер, что данные пришли, уже после заг...

поэтому табличку надо выводить только после загрузки данных - а на время загрузки данных выводить о том что данные загружаются / обрабатываются

Lis- Автор вопроса
свифка (макс)
в покажите TextRecResultVC а именно поле passportD...

ну тут коротко. или обработку показать?

Lis
ну тут коротко. или обработку показать?

viewDidLoad вызывается когда вьюшка загрузилась в память. соотвественно, когда мы установили свою дату в поле - она все еще будет пустая во viewDidLoad

Lis- Автор вопроса
.juss
поэтому табличку надо выводить только после загруз...

я правильно понимаю, что в начале функции распознавания текста, я ставлю isloading = true, в конце false. а в кнопке пишу что-то вроде if isloading == false, грузи вью? не получится так, что isloding будет не false и дальше ничего не случится?) простите заранее за идиотские вопросы)

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
52
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
буквально один оставшийся вопрос при выполнении строчки mov eax, 5 операнд "5" будет присутствовать где-либо в памяти (любой), кроме как в памяти блока .code? подвопрос: как...
12
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
14
я не понимаю mov [r11+8],rcx и прочие. мы записываем значение из rcx, куда?
Bor
15
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
5
А какие расширения активно используются в промышленности? Именно идейные, по типу гадт, а не всякие оверлоадедстрингс
Степан
11
у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше): - "п1" --- виртуальный адрес, то есть тот, который ресолвится в "п...
Toideng
3
Guys Who’s kurdish on this group?
Hiwa Amiri
11
Карта сайта