GrafMine
так я еще не дебажил ))
Виталий
expr type(of: newView)
GrafMine
(Notify_Prepare.NewView!.Type) $R1 = Notify_Prepare.NewView!
Виталий
expr newView.onClick
GrafMine
я его закоментил
GrafMine
сейчас раскоменчу
Виталий
expr newView == nil
Виталий
просто проверить другие кастомные св-ва
GrafMine
(lldb) expr newView.onClick
error: Execution was interrupted, reason: EXC_BAD_ACCESS (code=1, address=0x0).
The process has been returned to the state before expression evaluation.
GrafMine
(lldb) expr newView == nil
(Bool) $R0 = false
Виталий
expr type(of: newView!)
GrafMine
угу)
Виталий
блин, че он все редактирует телеграм))
Виталий
expr type(of: newView!)
GrafMine
(Notify_Prepare.NewView.Type) $R1 = 0x000000010dd4e348
Виталий
эм
Виталий
expr type(of: newTableView)
Виталий
и
Виталий
expr type(of: newTableView!)
GrafMine
(lldb) expr type(of: newTableView)
(UITableView!.Type) $R2 = UITableView!
(lldb) expr type(of: newTableView!)
(UITableView.Type) $R3 = UITableView
Виталий
вот, есть разница
Виталий
попробуй newView выставить пока как UIView
Виталий
и взывать дебагом потом expr type(of: newView!)
GrafMine
ок
GrafMine
(lldb) expr type(of: newView!)
(UIView.Type) $R0 = UILabel
GrafMine
ахахах что ?)
Виталий
вот подозревал)
Виталий
меня title смутил
Виталий
в сторибордах
GrafMine
сейчас удалю
Виталий
мне кажется не тот вью выставил сюда просто
Виталий
или лишний где-то выставлен
Виталий
и переопределяет
GrafMine
(lldb) expr type(of: newView!)
(UIView.Type) $R0 = Notify_Prepare.NewView
(UIView.Type) $R1 = Notify_Prepare.NewView
GrafMine
ето норм ?
GrafMine
что два вывело
Виталий
swift явный язык, и если его наебнуть, он будет нас наебывать не подозревая)
Виталий
ну норм наверно)
Виталий
главное чтоб работало
GrafMine
(lldb) expr type(of: newView!)
fatal error: unexpectedly found nil while unwrapping an Optional value
error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
The process has been returned to the state before expression evaluation.
fatal error: unexpectedly found nil while unwrapping an Optional value
error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
The process has been returned to the state before expression evaluation.
GrafMine
убрал класс с него
Виталий
т.е. убрал класс?
Виталий
ну тут переменная = nil
Виталий
а ты пишешь с ! и он ругается
Виталий
unexpectedly found nil while unwrapping an Optional value
GrafMine
в общем по итогу что помогло : удалить лейбл, убрать класс привязку, и все связки что с ним были, потом опять все накинуть, и все запахало
GrafMine
СПасибо
GrafMine
интересный квест вышел
Виталий
Опыт теперь +1 у тебя)
GrafMine
угу, жалко что именно явную причину не роскопали)
Виталий
да и я буду знать что в дебаге свифт может наебывать) С objc как-то не так в этом плане
Виталий
ну причина была очивидна - не тот объект не того класса цеплялся в итоге
Виталий
он думал что это NewView, а на самом деле UILabel
GrafMine
так он стал UILabel когда я ему явно укзал UIView
GrafMine
магия какаято)
Виталий
ну хз, мне кажется в сториборде что-то намутил
Виталий
возможно за основу взял не тот базовый класс
GrafMine
я копировал сториборд )
GrafMine
мб из-за етого
Виталий
кто знает)
Виталий
про weak в длегатах не забывай - а то забьешь память на устройствах утечками
GrafMine
ага спасибо
Виталий
правило простое - если один объект ведет к одному, а другой к первому - кто-то из них должен держать не жесткую связь - например weak
Виталий
но weak могут указываться только классам, поэтому наследники протоколов - class
GrafMine
угу, ок тпеперь моно спокойно идти спать ) план на ночь выполнен))
GrafMine
спасибо)
Виталий
один объект A ссылается на B. B ссылается на А. У обоих счетчик ссылок повышен за счет друг друга и пока один из них не уничтожится - у другого он не понизиться. Вообщем оба буду висеть в памяти и их счетсик ссылок не будет понижен до 0 никогда.
Виталий
Это не java - там есть специальный сборщик мусора, который это определяет
Виталий
Тут все проще и эффективнее, но и на плечи разработчиков больше ответственности
Stanislav
Прощу прощения, со сна перепутал делегат с аутлетом :) В делегатах нужно, да. Однажды даже была веселая отладка из-за того, что сторонняя либа сильно держала объект текстфилда, из-за этого не дохла целая цепочка контроллеров.
Anonymous
Кто может подсказать какую-нибудь статью о том как обернуть объект с делегатами в Rx объект?
Anonymous
Anonymous
Действительно, спасибо.
Nikita
можно ли получить путь к фото (URL), такой же как и в директорию .documentDirectory?
urls(for: .picturesDirectory, in: .allDomainsMask)[0] as URL не сработало
Nikita
разрешение получил через PHPhotoLibrary
Nik
Nik
Ребят как правильно гуглить чтобы реализовать такое?
Nik
Igor
какое
Anonymous
UITableView, custom transition, pan gesture