
Max
01.12.2017
12:35:45
А так у тебя транзакция закрывается внутри транзакции. А должна по идее по окончании
Насколько я понимаю

Dee
01.12.2017
13:06:28
Привет, ребят!
Хотел бы снова помощи спросить.
Есть viewController. В нем 3 buttons с autolayout.
Задача:
При появлении VC как сделать анимацию, чтобы эти 3 кнопки, которые расположены снизу вверх в ряд, появились поочерёдно начиная снизу и выезжали (словно Титры в звездных войнах).

Google

Rychkov
01.12.2017
13:08:39
В чем проблема?

Ivan
01.12.2017
13:08:41
Точно как титры в зв?

Dee
01.12.2017
13:09:32
Я просто хз как это сделать.

Rychkov
01.12.2017
13:09:39
За такую анимацию из гильдии программистов уволят

Dee
01.12.2017
13:09:41
Да нет. Просто чтобы снизу вверх выехали кнопки

Ivan
01.12.2017
13:09:47
то есть оно должно вдаль уезжать?

Dee
01.12.2017
13:09:51
А как правильно?

Ivan
01.12.2017
13:09:52
А, ок.

Dee
01.12.2017
13:09:56
Счас покажу что хочу.

Ivan
01.12.2017
13:10:03
Давай

Dee
01.12.2017
13:11:26
Только с кнопками. И они расположены снизу.
Попробую это. Может найду что там.
В этом примере сделали с tableView

Google

Dee
01.12.2017
13:13:29
Но мне надо с кнопками и не знаю как под себя подстроить.

Сергей
01.12.2017
13:13:37
для вау нормально, но потом напрягать будет жутко

Dee
01.12.2017
13:13:51
У меня всего 3 кнопки
Нажиматься будут крайне редко.
Ну или периодически.
Всяко лучше, чем просто появление.

Valery
01.12.2017
13:14:21
Анимация должна иметь смысл
Анимация ради анимации это плохо

Сергей
01.12.2017
13:15:24
Я не буду спорить, это понимание прийдет позже само
проходили

Dee
01.12.2017
13:17:02
Я вас примерно понимаю.
Но мне показалось тут было бы уместно.
Посмотрю на деле.
Потестирую

Ilkhom
01.12.2017
13:17:35

Dee
01.12.2017
13:18:35
Или кнопки опции в телеграмме
Если сейчас нажать на название чата , то менюшка с опциями выйдет. Вот такой эффект и желательно мне.

Google

Tarik
01.12.2017
13:21:35
Делаешь вью анимейшн и двигаешь по у

Dee
01.12.2017
13:21:38
В общем задача в том, чтобы сначала позиция кнопки была равна нижней границе view, в котором он сейчас находится, а потом сделать позицию той, что настроил в IB

Tarik
01.12.2017
13:22:23
Код писать за тебя я не собираюсь

Dee
01.12.2017
13:22:39
Да не у этом дело. Ладно. Найду как.
Спасибо, все равно.

Tarik
01.12.2017
13:23:29
Uiview.animation потом задаёшь анимацию что куда на сколько двигать

Ivan
01.12.2017
13:25:00
Можешь констрейнтами заанимировать

Dee
01.12.2017
13:25:44
Я это реализовал через y.
Сначала равен 0, потом равен midY, который сохранил до этого.
Но чувствую, что это убого и неправильно.

Ivan
01.12.2017
13:25:44
апдейтишь константу и в анимэйшн блоке лэйаутифнидед на вью вызываешь

Dee
01.12.2017
13:26:13
Но когда я делал layout if needed у меня кнопки лежат на своём месте, а при нажатии на одну из анимировано названия появились в этих кнопках.
Тут я и подумал, что чего-то не хватает.

Ivan
01.12.2017
13:29:11
Но это только для вертикального подъема. Если надо будет курвы какие-то поюзать, то уже не подойдет.
Рекомендую юзать POP или CHXChainAnimation

Dee
01.12.2017
13:31:52
Мне только вертикально сдвинуть.
Точнее как.

Ivan
01.12.2017
13:33:58
Свифт или обжс?

Dee
01.12.2017
13:34:04
Swift

Ivan
01.12.2017
13:34:16
https://developer.apple.com/documentation/appkit/nslayoutconstraint
тогда вот :)

Google

Dee
01.12.2017
13:52:52
Почитаю. Спасибо!)

Oknesta
01.12.2017
14:48:20
подскажите какие файлы я могу загружать
например мне нужно добавить файл в пост - какие я могу взять с айфона?

-_-
01.12.2017
14:50:05
ну фотки например, видео

Oknesta
01.12.2017
14:51:15
и все?
тока с галереи

Admin
ERROR: S client not available

Денис
01.12.2017
14:53:07
objC. Считается ли приемлемой практика создания сеттера для readonly проперти с целью получения возможности переопределения этого проперти в .m файле внутри class extension наследником первоначального типа (или классом, реализующим указанный протокол если проперти в .h файле была по типу id<ProtocolName>)?

Igor
01.12.2017
14:58:03
сделай в .h файле ридонли, а в .m файле такое же проперти , но readwrite

Yury
01.12.2017
15:02:27
Ребят, кто-нибудь находил годный мануал по создания transition'а между окном плеера и view когда он свернут (вот как в AppleMusic, когда закрываешь окно с треком)?

Oknesta
01.12.2017
15:13:32
кто то уже делал? как можно достать файлы с приложения files?
я хочу загрузить файлы в приложение свое от туда или на серверъ

Денис
01.12.2017
15:19:39
То есть readonly проперти внутри .m файла переопределяю как readwrite с типом-наследником. Создаю сеттер для readonly проперти, где проверяю, что пришел нужный наследник

Igor
01.12.2017
15:23:05
я что то давно на objc не писал) @property (nonatomic, strong, readwrite) MegaClass *someproperty в .m файле
что такое имел ввиду

Денис
01.12.2017
15:23:43
ну я так и сделал. просто лишнее не стал писать
типа nonatomic, strong
короче, понятно, что проперти надо делать изначально readonly, а потом переопределять как readwrite с типом-наследником. Вопрос в том, где объявлять сеттер (в протоколе или в h файле класса). Если в протоколе, то какова должна быть реализация сеттера: Какой указывать тип входного параметра сеттера: как базовый тип или как переопределенный? (или пофиг, ведь в обжС нет параметрического полиморфизма) Адекватно ли туда пихать assert?

Google

Денис
01.12.2017
15:35:47
вообще глобальная цель -> унифицировать View, ViewModels, Models, Coordinators в MVVM.
в общем, я удивлюсь, если кто-то не зае**ся читать мою писанину ?

Rychkov
01.12.2017
17:10:28

Кристиан
01.12.2017
17:12:15
он ж деприкейтед

Максим
01.12.2017
17:12:38
давайте на Rad Studio

Rychkov
01.12.2017
17:12:41
https://blog.timac.org/2017/1115-state-of-swift-ios11-1-macos10-13

Кристиан
01.12.2017
17:15:29
Кст нет ни у кого такой проблемы что при перезагрузке / смене локали или около того , прилетают все нотификации из сообщений дефолтных

Ivan
01.12.2017
17:17:07
+

Денис
01.12.2017
17:24:04
Смысл еще в том, что уточняя тип проперти мы пытаемся одновременно уточнить как тип параметра (у сеттера), так и тип возвращаемого ззначения (у геттера). При уточнении типа возвращаемого значения с общего на более специализированный и при даункасте объекта до базового типа мы будем продолжать возвращать уточненный тип, являющийся подмножеством общего типа базового класса и все будет ОК. Однако, параллельно мы уточняем уже тип входного параметра с более общего на специализированный, и при даункасте до базового типа на вход мы уже сможем принять абсолютно другой класс - неподходящий для переопределенного метода в классе-наследнике. Тут и возникает затык - поэтому и вставлен NSAssert.


Rychkov
01.12.2017
17:55:31

Денис
01.12.2017
18:06:02

Andrey
01.12.2017
18:22:26
А где джокер?
Что-то не вижу его в последних 10 сообщениях

Евгений
01.12.2017
18:46:10

Tigran
01.12.2017
18:46:11
Ушел учить Свифт. Сказал пока не выучит, не вернется

Евгений
01.12.2017
18:46:11
Гайз, а можно как нибудь такое провернуть?

Alex
01.12.2017
18:46:57