Hacker News new | past | comments | ask | show | jobs | submit login
Cocoa with Love: Showing a "Loading..." message over the iPhone keyboard (cocoawithlove.com)
23 points by twampss on April 13, 2009 | hide | past | favorite | 11 comments



Great post! I spent hours trying to do that this week-end, and I couldn't do it. Thank you!


It's good to see some smart thinking on the iPhone front, I find a lot of the closed source software lacking in features due mainly to the uncompetitive nature of the store..

"My app sells for 5$ with these features, Why add more when i can make another app that also sells for 5$?"

But of course I don't wish for a flame war, I understand there are many good developers on both sides, I just find this is a trend.


I find the app store to be highly competitive. The competition drives down price, which drives down incentive for developers to put too much time into a single app. This provides what many consumers are looking for on the device: $0.99 apps that will entertain them 5 minutes.


Adding features does not help you sell software. It could make existing users happier and more likely to write a good review, but that's it. You can't even sell the upgrades to them.


I don't like it.

Covering and uncovering the keyboard or screen mid-program is poor UX IMO. The keyboard is too big of an object on screen, too obvious, in an unhelpful way. Why not hide the keyboard, grey out your input box and refuse to take anything new until done processing and doing whatever it needs to do? Or move to a new view that has your information? And a loading box over the screen itself? Showing, hiding partially and then showing the exact same screen with little new information doesn't make sense and will confuse some users.

If you're doing an app for a website (as far as I can tell, this is the main reason why a Loading view would pop up very often), why not look at Safari's Web Apps. They are still very good to use, and in some cases, will end up being much better then a native app would have been. Not to mention, you can distribute it however you like and not have to worry about the App Store.


Did this work for anybody? In simulator I see the keyboard on top of the semitransparent view...

EDIT: Oh, I see it now. You have to type in some text and press blue button to see the effect of keyboard being covered. Interestingly, keyboard is in its own window which is one of the few cases where an iPhone app would have more than one window at all (one other being alerts popups).


It's interesting I was thinking about the same thing a few days ago. Once you release an app, there won't be a lot of motivation to keep releasing updates to it ( no incentive for doing that ). Why not go and build another app ?


Did you read the same article as I did? It was about displaying a loading spinner over the top of the Apple keyboard. It is an interesting article and I'm going to look into it a bit deeper. I wonder how Apple views their method for enumerating the view objects to find the keyboard? They seem to be a bit touchy about non-standard ways of doing things.

As far as updating your app goes, it is easier to update your current app to attract new users and better reviews than it is to start a whole new project. And some of us do take some pride in our work, so fixing bugs is a moral imperative.


he's not using any undocumented methods for finding the keyboard, but he is uncovering information that apple apparently doesn't want you to have, since they don't provide a documented method for locating the keyboard. i'd say that's a gray area. maybe they'd allow it, maybe not.

for finding the first responder, he's using an undocumented method. that's a big no-no. they'd probably keep you out of the app store if they noticed that one.


The Facebook app seems to use this method to display Post/Cancel buttons in a view above the keyboard when leaving comments


I think he meant to reply to @slavox's comment, not a general post.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: