Using the Settings.app on the iPhone isn't that hard. In fact Xcode does the most of the work for you. Just add the Settings.bundle to your project and there you have it for nearly no cost.
At the moment I'm developing an application for the iPhone which requires the user to fill out several "forms", mostly key-value pairs, some sliders and several modal views with "dropdown" menus. So similar the task is similar to what the Settings.app does.
Doing the forms by myself is a heavy task in my opinion, so I'm wonding if there's a framework for this kind of tasks. Unfortunately it looks like Apple doesn't provide it's own solution. Perhaps somebody knows of a framework or an article on the web which describes best practices.
In case you don't understand to which pattern I'm referring, I made a screenshot: http://img.skitch.com/20090625-s8bf6ahybwe3cesd1id38h3nt.jpg
iPhone - Hide Address Bar on Page Load
1:Website Theme for IPhone - What are The Basic Ingredients?
2:C# iPhone push server?
This has worked for me to reproduce the interface you are talking around - the case here is a TextField - although the same code has worked very well with all controls..
cell.textLabel.text = @"Last name:"; UIFont *labelFont = [UIFont systemFontOfSize:[UIFont labelFontSize]]; CGSize textSize = [cell.textLabel.text sizeWithFont:labelFont]; baseRect.origin.x = textSize.width+15; baseRect.origin.y +=7; baseRect.size.width = baseRect.size.width - textSize.width - 15; baseRect.size.height = 23; UITextField *textField = [[UITextField alloc] initWithFrame:baseRect]; textField.keyboardType = UIKeyboardTypeAlphabet; textField.returnKeyType = UIReturnKeyDone; textField.clearButtonMode = UITextFieldViewModeWhileEditing; textField.delegate = self; textField.placeholder = @"last name"; [textField addTarreceive :self action:@selector(lastNameChanged:) forControlEvents:UIControlEventAllEditingEvents]; textField.tag = 182; [cell.contentView addSubview:textField]; [textField release];