Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Very basic example of the Hero framework #33

Closed
wants to merge 3 commits into from

Conversation

fruitcoder
Copy link
Contributor

This more a proof of concept than a full-blown example, but it might helpful as a starting point

@CLAassistant
Copy link

CLAassistant commented Apr 18, 2017

CLA assistant check
All committers have signed the CLA.

@ghost
Copy link

ghost commented Apr 26, 2017

🚫 CI failed with log

@nguyenhuy
Copy link
Member

@fruitcoder Thanks for sharing this! We're thinking about merging examples into one big project (discussion here).
I'm thinking about maybe use Hero in the examples/CustomCollectionView project. That project has a masonry collection layout and it will be really cool if when user taps it, we use Hero to transition to a detail view controller. I'm planning to use that same example as a playground for the coming async collection layout API. It will be fun to see how together we can push it forward. What do you think?

@ghost
Copy link

ghost commented Apr 26, 2017

1 Warning
⚠️ This is a big PR, please consider splitting it up to ease code review.

Generated by 🚫 Danger

@ghost
Copy link

ghost commented Apr 26, 2017

🚫 CI failed with log

@fruitcoder
Copy link
Contributor Author

Hey @nguyenhuy ! Sure, sounds great :) What can I do to make this happen?

@nguyenhuy
Copy link
Member

@fruitcoder Awesome! I think the first step is to add a simple detail view controller that shows an image and is presented when user taps it in the feed. Then we can use Hero to handle the VC transition.

Copy link
Member

@nguyenhuy nguyenhuy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Marking this as "Changes requested" per previous discussion.

@appleguy
Copy link
Member

@fruitcoder this is very exciting, thanks for the contribution! I think there's a huge amount of potential in creating a larger, more sophisticated sample app. ASDKgram moved in this direction, and has already proven to be our most-used sample app, but we can do better.

Using Hero sounds awesome, because Texture will certainly support the beautiful and natural UI feel that physics-based animations can provide. Indeed, that was the motivation that started the framework. The sample app that you've suggested would be the first ever example to showcase Texture (or ASDK) in a physics-driven app!

Let us know if you run into any specific implementation issues, or if you don't have time to circle back to this for a while (in which case we can close the PR but open when ready).

@fruitcoder
Copy link
Contributor Author

Hey @appleguy! I have to release a new project until the end of June and then I'm on vacation for 1 month so I'll only come back on this in July :/

@haashem
Copy link

haashem commented Aug 7, 2017

Hi guys
I'm very big fan of Texture (AsyncDsiplayKit) and I almost replaced most of UIViews with ASDisplayNode to render views asynchronously.
in view controller transitions Hero needs the target view controller to be loaded synchronously, then it starts the transition. this is contrast of Texture UI rendering concept which renders UI asynchronously to increase UI interaction smoothness.

in the example provided, UI forced layout then animation starts, which cause a little delay.
How texture wants to use Hero without force layouting UI?

@nguyenhuy
Copy link
Member

nguyenhuy commented Aug 7, 2017

@hashemp206 I think we have to wait for an synchronous render here. You can, however, try to minimize the amount of content to be rendered at this step. Ideally, you only need to wait for nodes in the visible rect. Might be easy or hard, depends on your actual view.

@nguyenhuy
Copy link
Member

@fruitcoder This PR is falling behind too far. Let's close it but please open up a new one whenever you have time. Really looking forward to it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants