Custom Fields in UITableView - iphone

We would like to add the Custom Fields Like functionality just like the Address book as displayed in the Picture like the Add New Address and Add new Field.
Using the UITableView what will be the best way to achieve this functionality, if some one can point out to a sample that will be much better.

To achieve such functionality you have to create different type of custom cell according to your need and then while calling CellForRowAtIndexPath you can set the cell to your custom cell, and also you can add new cell and delete the cell from tableview by using tableview Edit method.
To add new row simply add a new value in the data source and reload the tableview and new row will be added to the table.

Related

IOs How to add a table view below text field

I am trying to create a list where I want users to enter data in the text view provided above and on they clicking add button it populates in a tableview below. !This is a sample type that I want to create.
sample image
Easy, the IBAction for the Add button should just add the text entered into the text field into an array that powers the UITableView. After adding it to an array, call reloadData on the UITableView, the UITableView will read the new data, as well as the other data from the NSArray and provide data to the list.

creating custom TableViewCell , label positions are correct

I am trying to use custom UITableViewCell. Everything is going well but the label I used in cell is not placing in proper place. I dragged labels as it is in custom cell from library.
Cell referenced to the class in its attribute window. I have only created an empty nib. Should I create a class for cell to set its place ? Any help tutorial reference plz. Actually I am trying to create view like:
Create CustomCell and drag and drop the uilables in the custom cell then use it. this is great one acc to ur problem and here is another tutorial
added the imgae of ableview cell

Three20 TTSectionedDataSource row height

I'm using Three20 to create a table with several textfields for user registration. I've found two possible methods using Three20. The first uses the TTSectionedDataSource's tableDidLoadModel method to manually add UI components and the second adds custom items that contains pre formatted UI components. The second option seems way more complex and I'm having a difficult time accessing the individual fields. So if one field is a textfield for the username, I need to access the field to submit the username and it doesn't seem like there's an easy answer. The first option gives me a lot of flexibility, but I can't figure out how to set the individual row heights. One row may have a label above a text field, another may have an image, etc. Is there a method that can be used in TTSectionedDataSource that will allow me to set the height for each row? Thus far, I'm using method one and creating UIViews to hold a label field and a text field. I've tried changing the frame of the uiview before it is added to the items array, but it has no affect.
Any ideas?
I believe I may have figured it out. Not sure if this is the correct solution, but it seems to be working.
First in my custom item class I pass the datasource as a delegate. Now that the delegate is part of the item, I can pass it to my textfield as the delegate. As long as I include UITextFieldDelegate in my data source class, it will respond as the delegate to my textfield. So that's getting the content from the textfield.
If I want to change the content in a textfield from the datasource, I can leverage the method:
- (void)tableView:(UITableView*)tableView cell:(UITableViewCell*)cell willAppearAtIndexPath:(NSIndexPath*)indexPath
I can check the row using indexPath.row then type the cell as the corresponding custom cell class. From there I can access any public methods in my cell class. So I created one that returns a reference to the textfield. So I can say:
[[(MyCustomTextFieldCell *)cell theTextField] setText:#"hello world"];
Next step is to assign it to a local ivar and then I'm assuming I should be able to access it at any time.
The main reason I want to be able to modify the content of the textfield is that in certain instances by clicking on the textfield, a picker will come up and the results of the picker are formatted and inserted back into the textfield.
Please let me know if my approach is too convoluted. Perhaps I'll create a sample and post it for everyone to rip apart and tell me I'm a moron and there's a better way.
thanks,
howie

Creating UITableViewCell with add photo button like in Contacts app

When you add a new contact, the first row contains the add photo button and the x co-ordinate of start of the cell is set to some value which is greater than the rest of the cells. How can this photo button be added and the cell frame can be changed?
Thanks!
They use a custom cell to achieve this. This custom cell has the picture-like control on the left and mimics a table cell next to it. It's not something that comes out of the box.
You can't set the x co-ordinate of a cell either, you can set the indentation on the other hand.
Edit: come to think about it, they probably use a custom table header instead of a custom cell. You certainly will find the headerfooter sample on developer.apple.com helpful.
Link: https://developer.apple.com/library/archive/samplecode/HeaderFooter/Introduction/Intro.html
I am more inclined to believe that they use tableHeaderView property.
Sure you can achieve the effect with custom cell.
But with header its pretty simple! I have done the same in few places!

Multiple images per row in UITableView's cell

Is there any sample code that would illustrate how to have multiple images within each row?
Typical apps show a thumbnail to the left side with text to the right. I'd like to do that plus an image to the right of the text.
How would I go about doing this?
In interface builder, simply create a tableview cell that looks like you want. Then create a UITableViewCell subclass that has properties pointing to the elements of the new cell. Set the class of cell to the subclass then add cells of that class to the table in the standard way.
A tableview cell is just a view and you modify it and use it just like any other view.
You'll have to create a custom UITableView cell. Here's an example of using multiple UILabels in one. Here's another.
Pretty easy - follow Apple's documentation to create exactly the cell you want in Interface Builder with as many UIImage or whatever else you like. Look at Table View Programming Guide for details on how to make and load the custom cells - just be careful about performance when you put a lot of visual elements in a table view.