Does there exist an alternate way to get input text from user other than native.newTextField? I’m finding these are useless in my app.
You could implement your own text input fields in Lua. You would need to create your own keyboard to accept touch inputs. I believe there is a project or two in Corona’s Code Exchange that implements that. The advantage is it would work on all devices and simulators.
Don’t think that will work for me. I purchased Corona to speed up development, not slow it down. Guess I’ll just abandon this project.
Jon, why not try looking for a solution rather than just giving up at the first hurdle???
There’s a couple of code snippets on the site which implement a good work around - the one I’ve adapted uses an off-screen native textfield and echoes input to a custom on-screen text box, it still uses the native keyboard, but presents the output any way you want. The original code was pretty good, easy to understand but a bit basic and it was the work of less than an hour to modify it to accept named parameters and extend the functionality to fit with my needs.
I tried using custom keyboards but user feedback was generally negative and the native ones were more responsive so I had to ditch an initial implementation in favour of the above.
Once I’m done with my current project updates I’ll look at tightening it up and give it back to the community at large (after all, I did get it from here in the first place), till then, you might want to search for it… or you could just give up without trying…
crussell - Thanks for the info. Unfortunately this isn’t the first “hurdle”. I am trying to build a business-type app and have been mickey-mousing my code left and right just to get it to work. This isn’t a matter of “giving up”, but rather that I don’t have the luxury of time like perhaps you do. I work full-time (non-computer related), have a 2yr old and 1mo old, wife, chores, etc, etc. I’m looking towards Corona to help speed up development time, and for the most part it does. However you can understand my frustration when dealing with an API called Native that isn’t very native at all. And what’s worse is that the official suggested workaround is to create my own keyboard and input objects. Sadly this is one of the areas Corona really lacks. I could literally code text fields natively in Obj-C and Java in a fraction of the time I would spend figuring out a suitable workaround in Corona. I guess it’s just me, but it seems a bit unfair.
Luckily I came across Widget Candy which has textfields that seem to work properly.
When building a business-type app with Corona SDK you have to have the following attitude: When I run into a roadblock, how can I change the design of my app so it’s still good, but doesn’t smash into that wall?
With ObjC and Xcode you have fewer walls to run into, but the road you’re driving on is dirt. With potholes. The journey is not fun. 
Corona is a freeway – smooth and fast – but yes, you have to take some off ramps sometimes to get where you want to go.
Jay
PS - And honestly, there are some apps that should not be done using Corona. But changing a design in order to have the rapid development of Corona is often a good compromise.
@JonPM, you mention that native.newTextField doesn’t do it for you and it’s not native at all. First you don’t say why it doesn’t work and you’re wrong about it not being native. If there are issues, why not share them instead of making general statements?
We do listen to users and try to make Corona a cross-platform SDK that’s useful and easy to use. We have a roadmap page where you can suggest/vote on features. http://feedback.coronalabs.com/forums/188732-corona-sdk-feature-requests-feedback
The main problem I am having is that you can’t change its z order. Because of my layout I can’t have all of my textfields on top of everything else. This isn’t native behavior for either iOS or Android, correct?
Maybe Tom will be back with an official word, but the unofficial word is, yes, that sucks. Because the the way the graphics work in Corona (due to OpenGL?) the native widgets have to be on top.
There is no awesome way to fix that – but you can fake it. Use display.newRect() to make a fake edit field, and display.newText() to put in whatever text should be in there. When the user taps that “field” to edit it, slap a “real” native edit field on top of it.
When they’re done typing, grab the new text, ditch the native textfield, and update the text in the fake with the new value.
Like I said, not awesome, but it works and from a user-standpoint it’s mostly seamless.
Jay
@J.A.Whye - Ya, I was about to go down that route before I came across Widget Candy. So far everything is working out with WC, so I’ll stick with that. Thanks for the suggestion.
You could implement your own text input fields in Lua. You would need to create your own keyboard to accept touch inputs. I believe there is a project or two in Corona’s Code Exchange that implements that. The advantage is it would work on all devices and simulators.
Don’t think that will work for me. I purchased Corona to speed up development, not slow it down. Guess I’ll just abandon this project.
Jon, why not try looking for a solution rather than just giving up at the first hurdle???
There’s a couple of code snippets on the site which implement a good work around - the one I’ve adapted uses an off-screen native textfield and echoes input to a custom on-screen text box, it still uses the native keyboard, but presents the output any way you want. The original code was pretty good, easy to understand but a bit basic and it was the work of less than an hour to modify it to accept named parameters and extend the functionality to fit with my needs.
I tried using custom keyboards but user feedback was generally negative and the native ones were more responsive so I had to ditch an initial implementation in favour of the above.
Once I’m done with my current project updates I’ll look at tightening it up and give it back to the community at large (after all, I did get it from here in the first place), till then, you might want to search for it… or you could just give up without trying…
crussell - Thanks for the info. Unfortunately this isn’t the first “hurdle”. I am trying to build a business-type app and have been mickey-mousing my code left and right just to get it to work. This isn’t a matter of “giving up”, but rather that I don’t have the luxury of time like perhaps you do. I work full-time (non-computer related), have a 2yr old and 1mo old, wife, chores, etc, etc. I’m looking towards Corona to help speed up development time, and for the most part it does. However you can understand my frustration when dealing with an API called Native that isn’t very native at all. And what’s worse is that the official suggested workaround is to create my own keyboard and input objects. Sadly this is one of the areas Corona really lacks. I could literally code text fields natively in Obj-C and Java in a fraction of the time I would spend figuring out a suitable workaround in Corona. I guess it’s just me, but it seems a bit unfair.
Luckily I came across Widget Candy which has textfields that seem to work properly.
When building a business-type app with Corona SDK you have to have the following attitude: When I run into a roadblock, how can I change the design of my app so it’s still good, but doesn’t smash into that wall?
With ObjC and Xcode you have fewer walls to run into, but the road you’re driving on is dirt. With potholes. The journey is not fun. 
Corona is a freeway – smooth and fast – but yes, you have to take some off ramps sometimes to get where you want to go.
Jay
PS - And honestly, there are some apps that should not be done using Corona. But changing a design in order to have the rapid development of Corona is often a good compromise.
@JonPM, you mention that native.newTextField doesn’t do it for you and it’s not native at all. First you don’t say why it doesn’t work and you’re wrong about it not being native. If there are issues, why not share them instead of making general statements?
We do listen to users and try to make Corona a cross-platform SDK that’s useful and easy to use. We have a roadmap page where you can suggest/vote on features. http://feedback.coronalabs.com/forums/188732-corona-sdk-feature-requests-feedback
The main problem I am having is that you can’t change its z order. Because of my layout I can’t have all of my textfields on top of everything else. This isn’t native behavior for either iOS or Android, correct?
Maybe Tom will be back with an official word, but the unofficial word is, yes, that sucks. Because the the way the graphics work in Corona (due to OpenGL?) the native widgets have to be on top.
There is no awesome way to fix that – but you can fake it. Use display.newRect() to make a fake edit field, and display.newText() to put in whatever text should be in there. When the user taps that “field” to edit it, slap a “real” native edit field on top of it.
When they’re done typing, grab the new text, ditch the native textfield, and update the text in the fake with the new value.
Like I said, not awesome, but it works and from a user-standpoint it’s mostly seamless.
Jay