Re: "Unusual" interface, usage of 3d party GUI framework and Mac App Store
Re: "Unusual" interface, usage of 3d party GUI framework and Mac App Store
- Subject: Re: "Unusual" interface, usage of 3d party GUI framework and Mac App Store
- From: Jens Alfke <email@hidden>
- Date: Sun, 04 Dec 2011 10:50:09 -0800
On Dec 1, 2011, at 5:51 AM, Nick wrote:
> I am wondering, does Apple allow applications to use non standard controls,
> like completely "drawn-from-png" buttons and custom window that QuickTime
> Player X uses for playback control?
Sure, there are plenty of apps with custom UI (many by Apple :)
However, pay attention to Apple’s UI guidelines. Except in a game, don’t use nonstandard controls gratuitously just because they look cool (even though Apple does this all the time, sigh.) Or if you do, make them really, really good-looking (this is what usually saves Apple :)
> Does Apple accept applications written using 3d party frameworks (Nokia (ex Trolltech) QT+QML)?
Yes. However, if I were you I wouldn’t touch QT with a ten foot pole. I haven’t seen any QT-based Mac app whose UI wasn’t total garbage. And this does make a difference; Mac users are pickier about UIs than Windows or Linux users. Having an attractive, intuitive UI can give your app a big boost (there are blogs like BeautifulPixels that are drawn to pretty UIs like moths to a flame), and having an ugly one will get you dismissed by users/reviewers as “a lame port”.
My advice is to factor out the UI layer from your app’s core engine (which is always good practice anyway) with a clean C or C++ API between them, and then write a native Cocoa UI in Objective-C or Objective-C++. This will also be a big help if you later want to do an iOS version, since iOS’s UI framework is different from the Mac’s.
—Jens_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden