Fedor
Будем смотреть, спасибо)
Anonymous
стоп, у тебя всем известная проблема не правильного переиспользования ячейки. вот букварь:
https://stackoverflow.com/questions/40705286/reusable-cell-old-image-showing
https://stackoverflow.com/questions/46207630/reusable-cell-or-wrong-asynchronous-image-download-from-json-data-in-tableview
https://stackoverflow.com/questions/35958826/swift-images-change-to-wrong-images-while-scrolling-after-async-image-loading-to
Yaroslav
Anonymous
когда надо установить кнопку - ты устанавливаешь, а когда не надо, считаешь что у тебя ячейка без кнопки. Но это не так. При скролинге ячейки переиспользуются, и например достается та, у которой ты уже кнопку установил...
Fedor
Так у меня ж есть reloadData который все видимые ячейки заново конструирует, разве не так это работает?
Fedor
Индекс для другого нужен. setUpButton ставит корнстрейты и action привязывает.
Fedor
Для чего тебе индекс в ячейке и что делает метод setupButton. Из контекста логичнее было бы тот блок который в else засунуть в этот метод. И в методе добавить пареметер типа bool и в него передавать .isAbleToBeInterracted. В таком случае твоя кнопка будет гарантированно изменять состояние при переиспользовании
Anonymous
Fedor
Нет. В тот момент, когда с сервера приходит сообщение и булевый флаг меняется, идёт reloadData
Fedor
в какой момент? в момент скролинга? да ладно?
но если так, то это вообще неправильно
Anonymous
ну вернее это блять больная фантазия релоадить при скролинге... Такие на одну ячейку вниз проскролили, и давай все 3000 ячеек прорелоадим
Anonymous
Fedor
Fedor
Вот смотри
Anonymous
блять, избавь от снимков, есть же гист
Anonymous
Anonymous
никому не показывай
Anonymous
сделай по букварям
Fedor
А почему это неправильно?
Yaroslav
если это метод делегата, то надо делать reloadItem at indexpath а не всю таблицу. Во первых
Yaroslav
Yaroslav
во вторых
в этом условии
надо противоположные значения указывать где блок if
Yaroslav
если они у тебя в том методе не приписаны
Yaroslav
if {
alpha = 1.0
bgcolor = .red
} else {
Yaroslav
alpha = 0.0
bgcolor = .black
Yaroslav
}
Anonymous
когда надо установить кнопку - ты устанавливаешь, а когда не надо, считаешь что у тебя ячейка без кнопки. Но это не так. При скролинге ячейки переиспользуются, и например достается та, у которой ты уже кнопку установил...
Anonymous
Anonymous
так и сказал ему
Yaroslav
+
Fedor
Прописаны.
Fedor
Они в методе прописаны у меня
Anonymous
Прописаны.
нет! не прописаны если тебе нужно сделать по-другому
Ilkhom
take it easy maan))
Anonymous
if message.isAbleToBeInteracted {
setupButton()}
else {
UNsetupButton()
}
Anonymous
!
Yaroslav
есть еще подозрения что у тебя модель Message структура 🙂
Fedor
Не, Message - класс
Anonymous
да все уже разжевали. просто сесть и исправить
Fedor
Я в Else блоке альфу на ноль ставлю. Это и есть unSetUp по сути дела.
Fedor
if message.isAbleToBeInteracted {
setupButton()}
else {
UNsetupButton()
}
Ilkhom
ты setupButton покажи
Anonymous
ща опять скрин кинет
Fedor
Могу через 10 мин показать.)
Ilkhom
нет гист ищет
Anonymous
:)
Dmitry
нелегко, когда первый секс в 20 лет, да еще и с ячейкой tableview
Ilkhom
:)
согласись тут веселее 😂
Artyom
всем привет, а как можно повесить слушатель на textView, чтоб он реагировал на то что вьюха в фокусу, выводил о этом в консоль например
Yaroslav
prepareCondomForReuse
Anonymous
Брекпойнт
Anonymous
а что?
Anonymous
это типа переключать раскладку лень
Fedor
Про фпс не понял. Почему он должен падать, если у меня таблица обновляется тогда, когда кнопка должна убраться.
Anonymous
да
Fedor
А ну это ок)
Fedor
У меня сначала ячейка релоадилась. Я думал в этом косяк и стал проверять на всей таблице
Dmitriy
JSON не нужен, XML наше все
Ilkhom
😂
Fedor
Не понял шутки, но умею)
Anonymous
Решил?
Михаил
Добрый день
Михаил
нужна Ваша помощь, пишу клиент, что-то наподобие dropbox, есть уже написанный сервер на c#, но я совсем не знаю с чего начать. используется на сервере протокол TCP, пробовал взять либу SwiftSocket.
Vladimir
Михаил
Ору
Михаил
Это курсач
Михаил
Михаил
А чего не писать?
Михаил
У сервера используется TcpListener
Ilkhom
https://github.com/owncloud/ios
Михаил
предлагаешь им показать ?
Ilkhom
зачем писать когда есть готовое опенсорс решение
Ilkhom
подними сервак и поставь свое лого и все)
Михаил
неплохо)
Михаил
та хотелось самому разобраться
Ilkhom
ну вот открой гитхаб и разбирайся
Dmitry
Так. Выпустил большое обновления. Завидуйте мне.