Alexey RGB
короче проблема такая - отлавливаешь ввод в делегате текстфилда, reload таблицу - соотв. для текстфилда вызывается didEndEditing - а нужно поведение такое, будто бы мы вводим - и ячейка эта не меняется - меняются только результаты ниже
Alexey RGB
пробовал сразу вызывать becomeFirstReponder для этого тестфилда - некрасиво получается
Anonymous
5 айфон + клавиатура + стандартный автокомплит + ячейка с полем = почти нет места
Alex
я примерно понимаю в чем дело. Пока идет переход, видимо система все еще смотрит на свойство prefersStatusBarHidden у fromVC, поэтому рисует навбар без учета статусБара. Потом, когда я вызываю у контекста completeTransition, то главным контроллером становится toVC, система понимает, что в нем prefersStatusBarHidden = false и спешно увеличивает размер навбара
prefersStatusBar(Style|Hidden) довольно бесячая вещь, особенно если у твоего дизайнера хорошо с фантазией (и прозрачные, и транслюкент навигейшн бары, и спрятать статусбар, и перекрасить. Так что самое простое, хотя и немного грязное решение, это в плисте VC-depended статусбар = false, и в рутовом контроллере уже баловаться со статусбаром как душа пожелает.
Dmitry
prefersStatusBar(Style|Hidden) довольно бесячая вещь, особенно если у твоего дизайнера хорошо с фантазией (и прозрачные, и транслюкент навигейшн бары, и спрятать статусбар, и перекрасить. Так что самое простое, хотя и немного грязное решение, это в плисте VC-depended статусбар = false, и в рутовом контроллере уже баловаться со статусбаром как душа пожелает.
спасибо, попробовал это решение. А вообще именно в моем случае проблема локализовалась за счет того, что нашел вот этот пост: http://blog.jaredsinclair.com/post/61507315630/wrestling-with-status-bars-and-navigation-bars-on или более конкретно вот этот абзац: UINavigationController will alter the height of its UINavigationBar to either 44 points or 64 points, depending on a rather strange and undocumented set of constraints. If the UINavigationController detects that the top of its view’s frame is visually contiguous with its UIWindow’s top, then it draws its navigation bar with a height of 64 points. If its view’s top is not contiguous with the UIWindow’s top (even if off by only one point), then it draws its navigation bar in the “traditional” way with a height of 44 points. This logic is performed by UINavigationController even if it is several children down inside the view controller hierarchy of your application. There is no way to prevent this behavior. Вобщем чтобы навигейшнБару понять, что он должен быть 64, а не 44 по высоте, ему надо быть прижатым к верху. А в моей анимации перехода в начальном положении между верхом экрана и toVC было расстояние. Решил проблему тем, что сначала поместил toVC вверху, потом тут же переместил куда мне надо, и уже потом запустил анимацию перехода. Но вот как до этого догадаться, не перешерстив пололовину Интернета...
Alex
Oh shie~
Alex
а вот по поводу >undocumented set of чего--нибудь это эппл умеет. Для меня вот до сих пор загаддка, что это было: NC->LoginVC делаешь popLoginVC, push AnotherVC в котором "H:|[view]-[NC1]-[NC2]|", у NC1 бар transcluent. Получаем забавный эфект - VC1 внутри NC1 содержит скролл, который уезжает не под бар в 64pt, а как будто бар - 44pt, т.е. примерно на середине тайтла
Alex
уже у всего что движется выставил automaticallyAdjustsScrollViewInsets в false, у всего что не движется - двигал и выставлял в false, перекопал пол интернета
Alex
проблема решила (барабанная дробь) удалением LoginVC из икскода и заливанием его по новой.
Alex
ну бар вообще и есть 44pt ))
А статусбар посчитать?)
Vlad
ну с ним да
Alex
ага
Alex
а иос считал, что его по высоте нет
Alex
и скролил под translucent бар лишние 20 pt
Vlad
А у меня вроде всегда так и считается)
Vlad
я всегда прибаляю высоту статусбара к высоте навигейшн бара
Alex
проблема решила (барабанная дробь) удалением LoginVC из икскода и заливанием его по новой.
а дело оказалось в том, что когдато (!) при сохранениии LoginVC (!!) похерились вот эти галочки
Alex
¯\_(ツ)_/¯
Vlad
)))
Vlad
А?) что? зачем?)
Ну вот у меня всегда 44 пункта высота возвращается)
Vlad
ааа, понял)
Alex
видимо, проще скрином показать будет
Alex
надо было вот так
Alex
а получалось так
Alex
шакалы съели скрины, простите
Aleksandr
Alexander
Generamba вроде назывался
Да годная штука, я юзаю щас, норм работает. Плюс у них видос есть с норм описанием того что и как там работает
Денис
Core data. Кто-нибудь делал асинхронную запись в базу и одновременное отображение добавляемых данных через fetched results controller? Мой код работает отлично в ios 10, и выдает странные ошибки в ios 8. Мой стек состоит из двух основных контекстов: фоновый backgroundContext, соединенный с persistent store coordinator и основной mainContext в главном потоке, соединенный с предыдыщим через parentContext. . Каждая очередная добавляемая асинхронно порция даных создает третий уровень - еще один фоновый контекст, ссылающийся на родителя- mainContext. В общем, такая схема довольно известная. Вопрос в том, что apple такого запилили с coredata в ios 10, что все работает, чего нет в ios 8?
Я нашел баг! Дело в том, что в коде по инициализации NSFetchedResultsController я производил сохранение UI контекста mainContext, чтобы вставленные на текущий момент записи перенеслись в backgroundContext. Убрал этот код - и вуаля! На ios 8 программа не вылетает... Однако затем я опять переклюсился на ios 10.2. И вспомнил, зачем я это сохранение делал. Без него в консоль шпарят предупреждения "CoreData: error: API Misuse: Attempt to serialize store access on non-owning coordinator". Хотя программа и не вылетает... То ли вставить проверку на версию ios для этого куска кода? Кто-нить сталкивался с такой ошибкой? ( CoreData: error: API Misuse: Attempt to serialize store access on non-owning coordinator )
Денис
Возможно. Но тут явная зависимость от версии ios. Без этого кода под ios 8 все работает збс (без всяких предупреждений). На 10 - сыпятся эти ворнинги. Если на 10 этот код вернуть (который я нашел на stackoverflow) - ворнинги пропадают и программа опять возращается в рабочее состояние.
Денис
Виню, ибо на стеке про такие вещи писали "..it's a known bug.."
Денис
Вот только все это коррелирует с тем, что я наблюдаю на практике.
Tarik
баг в коде а не в версиях ios
Tarik
у меня с 8 до 11 работает все нормально
Anonymous
а я с 9 до 6 работаю
Anonymous
и все нормально
Tarik
сочувствую
Tarik
6 поддерживать не очень легко
Денис
А меня удивляет то, как можно утверждать, что нет разницы между версиями, когда 1) баг проявляется только при смене версии симулятора с чистой программой) 2) Про изменение механизма работы с sql базой в 10 ios apple сама писала с упором на улучшение асинхронной работы. Кроме того, у меня пока не получилось изолировать проблему в чистом проекте с БД из 2 таблиц, т.к в простом примере баг не воспроизводится.
Денис
Значит есть еще какие-то существенные нюансы
Tarik
я про 6часовой рабочий день😉
Misha
Misha
У всех такое в бете? (эмулятор xcode 9)
Tarik
неа
Денис
Опять странное утверждение, особенно не видя кода) Предположим, я писал код чисто под ios 8. Никаких багов нет. Программа работает стабильно и правильно. Появляется ios 10 - и код внезапно становится кривым, а версия ios оказывается тут не при чем. Вот так логика)
Anonymous
Ты пьян иди домой
Misha
эмулятор
Anonymous
Эмуляторов нет, поэтому и троит
Misha
да
Anonymous
Запусти на симуляторе, там норм
Misha
сложно, однако, бетой пользоваться, но киллерфич сильно много
Павел
кто-то уже юзает ARkit?
Павел
мне интересно пойдет ли кто-то дальше говнодемок
Денис
Вот кстати еще один пример бага кор даты, если ни разу с ними не встречался. https://stackoverflow.com/questions/11990279/core-data-do-child-contexts-ever-get-permanent-objectids-for-newly-inserted-obj
Anonymous
свифтеров
Павел
я правильно понимаю, что свифт в том виде каком сейчас находится так и останется до конца времен? И глоабльных изменений каких-то скорее всего не будет? (только не надо налетать на меня с сообщениями типа а что тебе не нравится в нынешнем свифте)
Anonymous
да
Anonymous
особых ломающих изменений синтаксиса уже не будет
Anonymous
они даже новые конструкции очень нехотя добавляют
Misha
Мне не нравится в swift отсутствие поддержки siri. Чтобы можно было надиктовывать описание программы, а она за меня код писала
Anonymous
ну с тобой спорить по поводу свифта бесполезно
🌴 إسماعيل
Делаю редизайн с айфона на ipad версия есть не понятный момент.
🌴 إسماعيل
🌴 إسماعيل
cell.myImage.layer.cornerRadius = cell.myImage.frame.height/2
🌴 إسماعيل
я делаю округление, на айфоне все норм но на айпаде она не округленная в дебаге смотрю height приходит 48
Vlad
Если изначально она квадратная)
🌴 إسماعيل
не смотря на то что это айпад
🌴 إسماعيل
дочитайте пожалуйста товарищи )
🌴 إسماعيل
почему приходит 48 а не 60 ?
Vlad
в каком методе?
Vlad
Эта строка
🌴 إسماعيل
cellforatindexpath
Anonymous
[:
🌴 إسماعيل
есть какие предложения ?
Tarik
🌴 إسماعيل
эмммм )