«Оқу тізіміне қосу» анимациялық әсерін қалай жасауға болады

Оқу тізіміне элементті қосқанда, Safari (iPhone) құрылғысындағы анимация әсерін жасауға тырысамын. Бұл App Store қосымшасынан элементті жүктей бастағанда пайда болғанға ұқсас: қолданбаны жүктеуді бастау үшін қондырмаға түседі. Алдымен ол шапалақтап, сосын докқа шығады. Бұл Apple өзінің ОЖ-да пайдаланатын өте жақсы әсер.

Бейнебет көрінісімде анимацияның осы түрімен менің қосымшамдағы құралдар тақтасына түсіргім келеді.

Егер кімде-кім оны жасаған болса не әсердің атауы қандай екенін білсе, онда оны қалай жасауға болатынын айтып берсеңіз болады.

Рақмет сізге.

1

1 жауаптар

«Оқу тізіміне қосу» телефонымда ешқандай анимация көрсетілмейді, бірақ сіздің сипаттамаңызда «Ашық фондық режимде» - Сафаридегі (iPhone) анимациялау сияқты көрінеді. Менің жауапым анимацияны сипаттайды.


Мен бірнеше ай бұрын осындай нәрсе жазған болатынмын және оның көп бөлігі оны жасай алады, ал кейбіреулері олай емес. Сіздердің сұрақтарыңыз маған көрсеткендей, мұны қалай жасайтыны туралы көбірек адамдар білуі керек Мен бұл туралы блог жазбасын жаздым . Мен мұнда жоғары деңгейдегі тәсіл мен қиындықтарды суреттеймін, бірақ сол лауазымда осы туралы көбірек біле аласыз.


Жандандыратын мазмұнды алу

If you choose to animate the view that is on screen down to the (in your case) tool bar then you will only have to access its layer. If you want the original view to remain and animate a visual copy (like the "open in background"-Safari animation) down to the bar item then you should create a new layer and draw the content of your layer into an image and set that image as the content of the layer that you are animating

Соңғы ұстанымды есептеу

The start position of the animation is simply the frame of the view. The end position is very tricky since bar items (both tool bar items and tab bar items) are not UIView subclasses and doesn't have a public view property. This causes problems when you want to shake the bar item later on.

Кейбір қарапайым эвристиканы қолдана отырып, соңғы ұстанымды визуалды жақындатуды шештім. Егер сіз қолыңыздан бұрын білетін болсаңыз, сіз тек бір жолақ элементіне жанасатын боласыз, сонда соңғы ұстаным тиісті кадрға қатты кодталған болуы мүмкін.

Жол бойында жан бітіру

There is nothing special to moving, scaling and rotating the layer from the start to the end position. If you want to read more about how I did it you can look at the post I wrote.

Бар элементін сөндіру

This cannot be done without a lot of custom code or using private API at the moment. Since bar items doesn't have a view or a layer there is no accessible layer for you to animate. I guess that you could have a custom animating image that does the shake and set that during the animation and set the new image afterwards. The approach of drawing into an image and animating that doesn't work that well either since there is no accessible layer who can draw its content into the image (you want this for the special effect of the tool bar item and tab bar item).

... бәрін бірге жинап, оны арнайы қажеттіліктерге аударыңыз және сіз іздеген анимацияға ұқсайтын анимацияға ие боласыз.

0
қосылды