Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Making of an iPhone app design (Sharypic) (sachagreif.com)
69 points by sgdesign on March 1, 2012 | hide | past | favorite | 22 comments


The app looks great. I was wondering how to create the facebook style side bar, as I hadn't seen any API's for it yet. I stumbled upon this: https://github.com/BenHall/ios_facebook_style_navigation - anyone know any others?


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.

Since then, I stumbled upon https://github.com/edgecase/ECSlidingViewController, which can be a good candidate for a sidebar implementation, and I might switch to it for the future of the sharypic app.

Romain, developer of the sharypic app


Thanks for the information!


I haven't used any of these but there are a bunch of them mentioned here - http://stackoverflow.com/a/7777624/220891


Looks very nice. Good job!

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?


It's still the same. It's a real pain :(

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.


Absolutely fantastic design/UX on the blog as well.


thanks!


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.


That growth is exactly the worrying part of this pattern. It can get unwieldy real quick.


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!


Thanks! I really appreciate your comment, it's feedback like this that makes me happy to be a designer!


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.


Congrats on the app, it looks very cool.

I learned a bit of objc and cocoa awhile ago, but I never understood how you can customize the app like this.


Congrats on launching! Your passion for this project shines through the prose of your article; I predict success in your future.


This looks like a great app, will definitely check it out. Almost reminds me of what the original Color could have been.


Wow this is fantastic! Congrats on the app




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: