Using iOS 5 : : : I have a scenario where I must create a tableView with Custom Cells. The custom cells have a Controller called TainingCellController Subclass of UITableViewCel
Try working out with dynamic buttons on the same tableView class
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"WorkRequestedCC" owner:self options:nil];
{
for (id oneObject in nib) if ([oneObject isKindOfClass:[WorkRequestedCC class]])
cell = (WorkRequestedCC *)oneObject;
}
UILabel *Button=[[UIBUtton alloc]initWithFrame:CGRectMake(792, 13, 10, 15)];
[Button addTarget:self action:@selector(ButtonClicked:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:Button];
}
-(void) ButtonClicked
{
//your code here
}
}
You will set your UITableViewCell's class to your CustomCell's class and you will defined IBoutlets in CustomCell class and connect them.
And then you will set your Xib's file owner to your ViewController, and in your ViewController you will declare an
IBOutlet CustomCell *yourClassLevelCell;
and connect this IBOutlet to your Xib's UITableViewCell
now when you will initilize the cell inside your ViewController's method cellForRowAtIndexPath you will add target manually, something like this:
CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
[[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil];
cell = yourClassLevelCell;
[cell.button addTarget:self ... ];
//button is IBOutlet in your CustomCell class which you will have
//connected to your Button in xib
}