Egor
подскажите пожалуйста я новичок, передаю черег сегвей в контроллер объект массива, в этом контроллере удаляю из него элемент, но когда возвращаюсь в предыдущий контроллер, все элементы снова возвращаются, объект же по идее должен передастья по ссылке?
Renat
Ты массив передаешь?
Renat
Если да то все правильно
Renat
Потому что массив это структура
Egor
как по ссылке передать? пишу на свифте
Renat
Renat
Это уже объект
Egor
var screensImageArray : [UIImage]!
Renat
Нет
Renat
Стоп
Renat
Через NSMutableArray
Renat
Ну
Renat
var simple = NSMutableArray.init(array: screensImageArray)
Renat
Либо так var simple = NSMutableArray(array:screensImageArray)
Egor
ща попробую
Egor
а в свифте array [] разве не есть NSArray ?
Renat
Нет
Renat
Это просто Array
Egor
прикол
Renat
Читай документацию))
Egor
погуглил вообще такого не нашел
Egor
Заметка Массив в Swift связан с классом Foundation NSArray.Для более подробной информации об использовании Array с Foundation и Cocoa, см. Working with Cocoa Data Types в Using Swift with Cocoa and Objective-C (Swift 3).
Renat
Renat
Повторяю
Renat
Это в документации
Egor
спасибо!
Egor
тогда смысл юзать свифтовые структуры, они быстрее чтоли?
Renat
auto
Делегат сделай
auto
И удаляй им
Egor
и че 2 раза удалять
auto
Чо 2 раза удалять?
auto
Ты о чем?
auto
В Свифте массивы - это структуры
auto
Они копируются при передачи
auto
По этому ты не можешь удалить в одном месте
auto
Что бы в другом тоже удалилось
auto
Если ты, конечно, не заюзаешь именно NSMutableArray или же ансейф поинтер
Egor
уже заюзал NSMutableArray
Egor
а через делегат, мне удалить в тейбл контролере придется, и в предыдущем
auto
Зато секурно
Egor
базара 0
auto
И никакого андефайнед бихейвора
auto
Я бы руки отрывал за передачу NSMutableArray вообще
auto
Да не только я
auto
Все отрывают
Egor
да я гавно одно пишу, то пофигу
Александр
Жиза
Haile
да я гавно одно пишу, то пофигу
Главное - признать проблему
Danny
Парни, по верстке подскажите, как сделать так, чтобы таблица не уходила хуй пойми куда?
Danny
Renat
Покажи как констрейнты стоят
Alexey⚡️⚡️
Здарова
Alexey⚡️⚡️
George
Покажи как констрейнты стоят
пять минут вспоминал это слово, плюнул, ушёл в закат 🌅
Anton
пацаны
Anton
братва
Anton
кто яндекс деньги много юзал
Anton
в деве
Anton
Из того, что я понял, структуры выглядят пизже чем классы. Но ведь для всего своё применение. Вот этого я осознать чот не могу. В практическом смысле
1) Есть смысл пойти покурить все, что касается Value oriented programming на WWDC - там неплохо разжевывают. Хорошие лекции на тему: Understanding Swift Performance - Apple WWDC 2016 Protocol-oriented Programming in Swift - Apple WWDC 2015 Building Better Apps with Value Types in Swift - Apple WWDC Protocol and Value Oriented Programming in UIKit Apps - WWDC 2016 2) Как выше говорили - структуры выделяются на стеке 3) структуры копируются при передаче в функции и присваивании всегда, а значит они не шарятся между разными частями программы 4) у структур нет наследования, а это значит что никаких динамических вызовов, что быстрее 5) в целом чтобы вкурить зачем оно - советую посмотреть пару лекций Ричарда Хикки "The value of values" и "Simple made easy" - имхо лучшие концептуальные объяснения зачем, без этого перечислять все остальные различия вообщем-то бесполезно 6) Как было где-то в доках написано: - если вам нужно наследование, динамическая диспетчирезация, если у вас "долгоживущий" объект, копировать который нет смысла (например ViewController) - делайте класс - если вам все вышеперечисленное не нужно, и вы делаете просто контейнер для передачи данных типа CGRect - делайте Struct Вот тут подробнее http://stackoverflow.com/questions/24232799/why-choose-struct-over-class Эта тема больше на подумать нежели список каких-то готовых решений.
Anton
Еще пример: у меня есть обертка над AVQueuePlayer с плейлистом, кучей нотификейшенов и так далее. Вот сама обертка - это класс, композиции, которые я туда скармливаю - Struct, а вот по поводу плейлиста можно подискутировать что это должно быть класс или структура
Dry
1) Есть смысл пойти покурить все, что касается Value oriented programming на WWDC - там неплохо разжевывают. Хорошие лекции на тему: Understanding Swift Performance - Apple WWDC 2016 Protocol-oriented Programming in Swift - Apple WWDC 2015 Building Better Apps with Value Types in Swift - Apple WWDC Protocol and Value Oriented Programming in UIKit Apps - WWDC 2016 2) Как выше говорили - структуры выделяются на стеке 3) структуры копируются при передаче в функции и присваивании всегда, а значит они не шарятся между разными частями программы 4) у структур нет наследования, а это значит что никаких динамических вызовов, что быстрее 5) в целом чтобы вкурить зачем оно - советую посмотреть пару лекций Ричарда Хикки "The value of values" и "Simple made easy" - имхо лучшие концептуальные объяснения зачем, без этого перечислять все остальные различия вообщем-то бесполезно 6) Как было где-то в доках написано: - если вам нужно наследование, динамическая диспетчирезация, если у вас "долгоживущий" объект, копировать который нет смысла (например ViewController) - делайте класс - если вам все вышеперечисленное не нужно, и вы делаете просто контейнер для передачи данных типа CGRect - делайте Struct Вот тут подробнее http://stackoverflow.com/questions/24232799/why-choose-struct-over-class Эта тема больше на подумать нежели список каких-то готовых решений.
Ого. Спасибо огромное, буду изучать
Haile
http://www.cocoawithlove.com/blog/reactive-programming-what-and-why.html
George
господа, а где у нас тут самый сладенький, я ему подарочки принёс ,)
Igor
Мур
Denys
как у Page View Controller с Scroll Transition Style изменить анимацию? нужно что бы при скролле был не слайд, а fade
Danny
все, глянул, сам ошибку нашел)
Danny
Покажи как констрейнты стоят
Renat
Renat
Пиздакс
George
ммм… блазяка
Anton
Вкусно наверно
Dmitry
Dmitry
Судя по всему самый норм вариант это написать кастомный
George
сяоми?
George
правильно писать XYNTA