Tuesday, October 8, 2013

Text Fields are Painful

Today I met my friend Jaime for lunch and a beer at World of Beer.  Jaime is the author of DevWithTheHair and currently has a week of free time before he starts his new job.  I always enjoy 'geeking out' with other developers and designers about code, technology and the world in general.  It is one of those environments that I can just ramble on and not have the listener roll their eyes up into the back of their head.  It was very productive as we discussed my latest project,  his upcoming job, and how we could run parts of the world so much better with a beer in hand.
By the way, if by chance you are reading this blog and not Jaime's you are missing out.  He discovers and comments on the technical industry in a much more coherent manner than my 'train of thought' drivel...

-- Minor Side Note  --

How is it possible for me to have a 2 hour conversation with my friend and still give my wife a blank stare as she asks the normal question that anyone else would ask?  Questions like, "What is the new products he will be working on?"  or "How is the family?"  You would think that we just sat silently at the bar for the whole time from the amount of information Rebecca wanted from the meeting.
Hey, I got my geek time.  What else is there?

Anyway, this morning I cranked out the first Simple Table style scoring screen using the the SKScene node for displaying the lines, text and various scoring elements.  Since I wanted to show how it worked, I also threw together a screen to show how a user could input a scoring change or a user name.  This is when I ran into another problem with using Sprite Kit for the navigation.

-- Warning, Technical Talk ahead --
 I had to get a little creative to allow me to navigate to the next ViewController in my storyboard by using the parent ViewController to allow the Segue to be called.  SKScene are really laid on top of the ViewController or replace it altogether.  Not sure yet, but either way, I had to query the Scene's  RootViewController to eventually get to the proper ViewController for the Segue call.  It was a hack, but it worked for now.  I will need to find a more elegant solution for this brittle piece of code. 
The target data input ViewController used a delegate to allow the navigation back to the Scoring screen after the user adds the new value.   It works, but seems a tad sluggish.   
All the Text Fields I will have to use for name, score, and other information input will need the keyboard and all those goodies.  The Sprite Kit seems like a good way to display text, but not so much for text entry.
Maybe Sprite Kit is not the right display choice, despite the node system and nifty effects.   I can always draw lines using Core Graphics or skinny UIViews.  The fade, zoom, and other effects can also be done with normal widgets.  I would have to use other ways to implement sound and special 'chalk dust' effects, but they are enhancements, not requirements.  
Much to think about.

No comments:

Post a Comment