29

Hello I am building forms over and over in iPhone and iPad apps:

  • Custom UITableViewCells for labels with input
  • Localization for labels, placeholder text and section headers
  • Validation that marks the cells red or something and does not allow "Submit" if form is incomplete
  • Clicking in the cell activates the editable text box
  • Next / previous buttons
  • Reliable across devices, orientations, iOS versions

I can't imagine I'm the only one doing this. Is there a mature framework or something that can drop in and use? Could you please comment on how you use this library with designs other than vanilla UITableViews with your own colors etc.?

Matt
  • 9,068
  • 12
  • 64
  • 84
William Entriken
  • 37,208
  • 23
  • 149
  • 195

3 Answers3

37

Take a look at IBAForms - an open source project from from Itty Bitty Apps. I haven't used it yet myself, however I believe it does most of what you want, except for validation. Here is the github page: IBA Forms

It hasn't been maintained in a while, but if you're looking for a forms library - it's mature and works. At the very least, it could be the starting point for something you take further.

  • Update: There is also Chris Miles' EZForm library, which is very nice.

  • Update #2: Have also started checking out QuickDialog, which seems to be very popular.

  • Update #3: Nick Lockwood has created one called FXForms

  • Update #4: Martin Barreto has created one called XLForm

Jasper Blues
  • 28,258
  • 22
  • 102
  • 185
  • 1
    FXForms is the nicest of all the form frameworks I have seen so far. IMHO – neoneye Apr 23 '14 at 07:09
  • @neoneye - emphasized it in bold text. – Jasper Blues Apr 23 '14 at 07:17
  • Thanks, mate! Very useful. I'm having a little problem with the FXForms when on the gender form (beats me), so I moved on to QuickDialog and it looks pretty good. Cheers. – Felipe May 27 '15 at 15:28
  • @FelipeGringo I've got my own private forms lib at the moment (abandoned iBureaucrat). Its fairly low level, and so very flexible to reskin, customize, layout, etc. . . perhaps I'll post it up. – Jasper Blues May 28 '15 at 00:30
  • @JasperBlues i'll take a shot. Thanks. – Felipe May 29 '15 at 16:15
  • Wow! Thanks for this list. I tried QuickDialog and FXForms... FXForms is really great! – darksider Jul 06 '15 at 14:57
  • But XLForm seems very powerful too. Maybe I'll give it a try, since I need dynamic forms. – darksider Jul 06 '15 at 15:12
  • @JasperBlues Eureka is the sucessor of XLForms, you may want to add it to the list https://github.com/xmartlabs/Eureka I've been using it and it's quite good. – Tiago Lira Mar 24 '16 at 11:40
  • @TiagoLira Feel free to edit. Remove any obsolete ones, add new ones, etc. – Jasper Blues Mar 25 '16 at 10:57
  • I have tried various form frameworks and eventually ended up making my own SwiftyFORM, https://github.com/neoneye/SwiftyFORM – neoneye May 10 '17 at 11:41
0

I don't know if this counts as an answer, but i use Sensible Cocoa - Sensible TableView (STV) for this purpose a lot. It's not a "forms" framework (on top of UITableView) as such, but it can be used for this purpose in a very flexible way. It still requires some coding to build a full-fledged form but the UITableView/UITableViewController boilerplate code is reduced to a minimum. Unfortunately the developers bumped the price tag quite high with version 3.0, so i'm actually looking for a STV replacement right now. (I'd stick with STV if it wasn't for the price!)

Nenad M
  • 3,055
  • 20
  • 26
  • I also use STV and while it has a bit of a learning curve, it's a nice framework that is very extensible. They do charge for the full version, but they have a lite version that is available as a static framework and it works nicely with your own object models, dictionaries, strings and NSUserDefaults. If you pay, you get core data and web services as well. – CocoaEv Jan 22 '13 at 15:22
0

I don't know of anything that combines all those features, but I recently open-sourced my validation library PMValidation on github, which I used developing the iPhone app Imprints. PMValidation comes with many basic types suitable for validating forms, and in fact that's what I originally built it for.

Using the PMValidationManager class you can easily listen to UITextViews or UITextFields, and update whatever graphical widgets you want via notifications. It's very modular and easily extendable, should you have more unique needs. It's under the MIT license.

poetmountain
  • 657
  • 10
  • 18