Open Data Kit (ODK) is a free and open-source set of tools which help organizations author, field, and manage mobile data collection solutions.
How to create a sample form
Start the development by downloading the sample_xlsform. Carefully read the instructions on https://opendatakit.org/use/xlsform/.
Once you have created your own form, upload your spreadsheet to the online converter and save the xml you retrieve on your computer.
On your phone
On the Google Play Store search for ODK Collect and install.
Connect the phone to your computer and store the collected xml in ./odk/forms folder on your phone.
For detailed information on styling and creating the form please check http://xlsform.org/.
Collecting data with offline Maps? Please check the webpage of GeoODK. It is still a beta, but looking promising.