The sidebar isn't a stock Apple API. Before implementing it, I've been benchmarking a few frameworks on github, none of them being appropriate for the app needs. I wanted the facebook sidebar-like menu but being able to use a standard UINavigationController for the rest of the navigation in the app. In the Facebook app, they've implemented their own view navigation system.
So in the sharypic app, it's a custom implementation where the sidebar view is added directly to the main UIWindow, but below the rootViewController. Tapping the menu button triggers an animation to move the whole rootViewController's view left/right.
It's not ideal because the sidebar view controller doesn't get the orientation change info anymore and making all the views stay in place requires an important amount of hacks (for instance presenting a modal view controller while the rootViewController is shifted on the right causes the rootViewController to be placed back to its original position).
The code actually can't be exposed as a reusable framework because of all the hacks implemented here and there.
I'm curious how you created some of those menus, buttons. For example having the 'X' at the top right corner and nice looking buttons with images at the bottom.
Is there a resource for these things or a general process? My experience has me in the belief that using anything other than the native widgets is a real pain. At least in the past, has that changed?
For instance the 'like' and 'share/invite' buttons are composed of several labels and images, and their position is computed depending on screen orientation, size of the button icon, internationalisation of the strings and length of the badge item (the 'like' badge indicates a count). There's a transparent UIButton which sits on top of all these widgets to get the tap event.
And we're changing the background image when the user taps in/out/up/down the button.
Good job on the app. I don't see why copying the facebook menu is bad, considering it is a simple and effective way to add tabs which has somehow become a best practice. And as you say it's easily recognizable, so the credit goes to facebook as well.
I agree 100%. But it's not always easy to know where to draw the line. For example copying a menu pattern is fine, but copying an icon might not be… unless the icon becomes a standard itself. So it can be tricky.
I really think that the vertical navigation menu is inappropriate for mobile apps. It makes the user flow feel more clunky and encourages section overload. It is also a sign that there hasn't been enough effort put into information architecture.
Agreed. There's a trend to invent items to fill these confusing pullaway lists. Not to pick on Sharypic (it's delightful), but the menu shows only two things: News and Events.
Remember, when you copy Facebook, you inherit their constraints. A full-featured app for an eight-year-old social network of 800 million has to do a lot. A do-one-thing-well photo app? Not so much.
This is something that I struggled with myself during the design process. I'm sure the app could be improved, but all I can say is that the current solution is the best we came up with.
Also, the menu presents the advantage of leaving room for growth without having to redesign the home screen.
Great app and hope to use it soon. Just have to find a decent event to go to!
One thing I'm wondering about is the Follow sharypic on Twitter and Like sharpic on Facebook buttons in the About screen. Is it just using their respective APIs or just a plain link?
There's something about beautiful design that gets me excited and sparks a desire for me to create something beautiful myself. A great design like this also pushes me to try out an app when I probably normally wouldn't. Great job!
Great concept! I've been waiting for a technology like this. Event based seems like the right way to go and I've often wished an app like this existed for my private events.