Why wouldn't someone have the ability to diable it. At the moment, when you want to disable the EQ, you have to make it flat. But when you want to have it back you have to re-do all the adjustments.
Also toggling EQ for before/after comparison is quite useful sometimes.
I'm sold
[doublepost=1511258963][/doublepost]
Did indeed record some gifs to show the floating headers. The behavior on switching tabs. And the performance with CALayer enabled/disabled. Used giphy capture for that and uploaded it on their page. So they have 60fps and you can see the difference and smoothness better.
Demo:
https://giphy.com/gifs/xUOxeVmCaU3U9Dhi5W
CALayer disabled:
http://www.giphy.com/gifs/3o6fJ8pErz4lcAQxl6
CALayer enabled:
http://www.giphy.com/gifs/xUOxf7wGVGPVDmeYOA
As you can see, the performance difference is HUGE.
But caching the cells and improving auto layout should improve the performance even more (so I guess)
And this is the whole view structure:
View attachment 736808 Theres no tab view or whatsoever involved. Just remapping the tracks array. And only a one data model for a single track. But if you're interested in the code you could probably just check out the github.
I definitely admire your passion for learning ... it is palpable !
Your demos look great. I checked them out, and yes, I saw the performance difference in the last 2.
I would definitely like to see your solution implemented.
You might recall in my previous post where I mentioned Newton's conservation of energy law as it applies to code gunk. When you sweep dirt from one place, it often goes to another place. If you think the current model looks dirty, and you sweep the dirt from it, it will likely get transferred to another place (another layer of the app).
I'm not saying that my current solution for grouping tracks is the best; I only know that it works and works fairly well. If I were to completely revamp it, I would probably end up just moving that complexity someplace else, so I'd just rather not bother
I'm not saying this as a pessimist. I'm saying it from my experience as a programmer. You just cannot remove complexity. You can only move it from one place to another. And, in the end, the question becomes - where would you rather have that complexity.
I definitely encourage you to proceed with your exploration (and I greatly admire your zest), but just be aware that complexity cannot be destroyed; it can only be converted from one form to another. Hey, don't take my word for it; trust Sir Isaac Newton
This is ultimately a matter of personal preference ... where you like to keep your garbage bin
Last edited: