
Виталий
06.04.2018
14:51:41
да ты ничего всерьез не воспринимаешь
только ходишь и хихикаешь
как та девочка без каски

Valery
06.04.2018
14:52:24
она там уже достаточно давно

Google

Valery
06.04.2018
14:52:30
то есть до увеличения размеров трекпадов

Виталий
06.04.2018
14:54:35
и не говори, странно что ты не нашел

Vlad
06.04.2018
14:55:57
Ладно, хорош сраться. Опускаюсь на уровень быдла)

Виталий
06.04.2018
14:56:02
мне кажется в твоем сообщении слово "инвалид" имеет какой то негативный контекст
ты намекаешь на то что инвалиды чем то хуже тебя?
вот крыса, потер все сообщения

Vlad
06.04.2018
14:56:36
Вопрос не касается iOS

Виталий
06.04.2018
14:57:00
как с тобой говорить после этого
заднеприводный

Ольга
06.04.2018
15:34:54

Виталий
06.04.2018
15:35:03
))
палишься)
перед аудиторией)

Google

Виталий
06.04.2018
15:36:06
а то еще старожилом назовут, обидно будет

Alex
06.04.2018
15:37:05
Чат, чем заменить JSQMessagesViewController? обжектив

Ivan
06.04.2018
15:37:19

Aleksey
06.04.2018
15:37:53

Ольга
06.04.2018
15:38:11

Sergey
06.04.2018
15:38:18

Alex
06.04.2018
15:38:31

Виталий
06.04.2018
15:38:32
deprecated

Sergey
06.04.2018
15:39:05
Как для чата за пару часов то сойдёт
Мне один заказчик ссылку на рея кинул, говорит вот так хочу. Ну че хозяин барин.
Для его нужд хватает

Ivan
06.04.2018
15:40:28
X-ом
Пофикси, оформи ПР и не будет больше ни у кого проблем :)
Он же вроде на констрейнтах был?

Sergey
06.04.2018
15:41:35
Та там вообще все кастомно можно запилить

Сергей
06.04.2018
15:56:12
Он на collectionview
Тот же гемор с ним если честно
Я вкусил

Sergey
06.04.2018
16:19:05

Google

Сергей
06.04.2018
16:19:36
В основном на этом ощутил
Просто сам смысл использовать коллекшен для табличного отображения

Sergey
06.04.2018
16:22:35
Своя раелизация не всегда хорошо. Во первых без опыта работы с чатами можно много моментов пропустить. во вторых временные затраты, заказчик может сказать - дорого, но если его устраивают возможные проблемы - то пожаоуйста
для своеобразного мвп
кастомный лайаут же

Сергей
06.04.2018
16:27:01
Я про batch

Sergey
06.04.2018
16:31:04
кстати, что ты такого делал с чатом, что тебе понадобилось лесть в реализацию?

Сергей
06.04.2018
16:43:43
Чтобы начинались сообщения снизу

Ivan
06.04.2018
16:46:36
Это как, снизу?

Ivan
06.04.2018
16:46:47
Вверху свежие, внизу - старые?

Сергей
06.04.2018
16:49:28
Внизу свежие, вверху старые
В этой либе наоборот
Добавил параметр в неё которая на 180 градусов разворачивает сам коллекшн и на 180 градусов ячейки так же
Идею подсказал Амир, я сначала посмеялся, а потом сам так сделал ?
А, еще реверснул y

Ivan
06.04.2018
17:02:32
Странно когда мы писали чат на джск у нас все ок было - как положено
это было просто года .. 3 назад

Google

Сергей
06.04.2018
17:04:27
Но до новых пролистать же надо ещё?

Ivan
06.04.2018
17:04:53
вниз то?

Сергей
06.04.2018
17:05:01
Да

Ivan
06.04.2018
17:05:09
мммм...

Admin
ERROR: S client not available

Сергей
06.04.2018
17:05:23
А я хотел чтобы indexPath 0,0 это было самое свежее сообщение

Ivan
06.04.2018
17:05:24
Метод же есть :)

Сергей
06.04.2018
17:05:44
Какой? )

Ivan
06.04.2018
17:05:46
Ишь че хотел

Сергей
06.04.2018
17:06:28

Ivan
06.04.2018
17:06:55
Ладно, это долгий разговор зачем так. Я просто пятницу добью и пойду отдыхать :)

Сергей
06.04.2018
17:07:23
Брррр
Я ничего не понял что было )

Александр
06.04.2018
20:07:52
Эх. Спустя 4 месяца проб и ошибок таки победил лагающий скролл UITableView с UITextView в ячейках.
Из всего, что было перепробовано:
1. Отказ от AutoLayout (fail, он не вносит ключевой вклад).
2. Попытка покопаться в кишках и кешировать внутренности UITextView (fail, private api - это плохо).
3. Рендеринг через CoreText во время скролла списка и замена пререндеров на UITextView после остановки скролла. Почти win, но CoreText и TextKit очень по разному рендерят межстрочные интервалы. Неприятная анимация сдвига получалась при остановке скролла.
4. Реализация своего UITextView с асинхронным рендером. Пришлось заново реализовать все фичи по выделению текста, подсветки ссылок (еще и лупу осталось приделать), но теперь списки двигаются быстрее, чем на UILabel. Win.

Виталий
06.04.2018
20:26:43
что и редактирование есть?

Александр
06.04.2018
20:33:21

Виталий
06.04.2018
20:33:54
ну тогда это фейл)

Александр
06.04.2018
20:34:05
А шо, есть альтернативы готовые?

Виталий
06.04.2018
20:34:06
столько времени на такую ерунду убить

Google

Виталий
06.04.2018
20:35:15
просто это задача не из ряда вон и решается несложно
не 4 месяца))

Александр
06.04.2018
20:40:29
не, сам контрол написан за 4 часа (судя по времени первого коммита), просто в течение 4х месяцев иногда прикидывал разные реализации.

Виталий
06.04.2018
20:42:18
в любом случае хорошо что пришел к решению и получил опыт на попытках

Dima
07.04.2018
05:52:08
как в моделях прогрузить locationmanager?тк там нету функции viewdidload

Dmitry
07.04.2018
05:58:20
location manager не надо использовать без обертки. Напиши класс-синглетон и туда затки все что неоходимо для location, сделай интерфейс и обзерверы, на них будут подписываться все, кому нужны в дальнейшем координаты, сделай lastLocation, ее будут использовать все, кому нужны текущеие координаты. Один раз сделаешь, потом всю жизнь будет переиспользовать.

Dima
07.04.2018
05:59:38

Dmitry
07.04.2018
06:00:50
У тебя будет простой вызов чтобы получить локацию, одна строка [[LocationHelper instance] lastLocation];
все.

Dima
07.04.2018
06:01:26

Dmitry
07.04.2018
06:01:46
что значит полноценно?
У тебя приложение стартовало. LocationHelper подписался на обновления координат от системы и их получает. Это все внутри этого класса.

Dima
07.04.2018
06:03:06
а как потом вызывать в последующих last location?

Dmitry
07.04.2018
06:04:54
Изменения? Не пойму. LocationHelper start - будет запускать подписку на координаты. И дальше этот инстанс живет своей жизнью, всегда в нем есть самые последние координаты, тебе ничего не надо дергать. LocationHelper stop - остановить обновление координат.

Dima
07.04.2018
07:30:58