You can easily control the visibility of any control, including UIImageView. If you want to create things in IB, then one solution is to add the controls you need, set them as properties and hide the ones you do not want for this cell.
eg.
cell.image.hidden = YES;
When they are hidden, they have no overhead, and although there may be thousands of rows in your cell, there will be very few real cells, so this is a pretty effective solution. Just remember that cells are reused if you call [tableView dequeueReusableCellWithIdentifier] (what you need to do), so you will need to explicitly show / hide the control whose visibility can be changed.
. , , , , , .