J'ai une vue de la table et quelques boutons à l'intérieur. 4 boutons dans une rangée puis 4 autres dans la deuxième rangée et ainsi de suite. J'utilise array pour ajouter des images aux boutons.Rechargement d'images dans les boutons présents dans les cellules de la vue de table lors du rechargement de la vue de la table
Pour la première fois, cela fonctionne correctement, mais lorsque vous supprimez tous les éléments de la matrice et de nouveaux objets dans la matrice, puis appelez la vue de rechargement de la table, les nouvelles données ne sont pas rechargées.
Quelle pourrait être la raison?
Je posterai une partie de mon code:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
// if (cell == nil) {
// cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
// }
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
if(indexPath.row == 0)
{
button1=[[UIButton alloc] initWithFrame:CGRectMake(15,5,100,87)];
[button1 setImage:[array objectAtindex:0]
[button1 addTarget:self action:@selector(ClickTo:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:self.button1];
button2=[[UIButton alloc] initWithFrame:CGRectMake(135,5,100,87)];
[button2 setImage:[array objectAtindex:1] forState:UIControlStateNormal];
[button2 addTarget:self action:@selector(ClickTo:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button2];
}
else if(indexPath.row == 1)
{
button3=[[UIButton alloc] initWithFrame:CGRectMake(15,5,100,87)];
[button3 setImage:[array objectAtindex:2] forState:UIControlStateNormal];
[button3 addTarget:self action:@selector(ClickTo:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button3];
button4=[[UIButton alloc] initWithFrame:CGRectMake(135,5,100,87)];
[button4 setImage:[array objectAtindex:3] forState:UIControlStateNormal];
[button4 addTarget:self action:@selector(ClickTo:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button4];
}
else
{
// Do something here
}
return cell;
}
mon bouton de clic:
-(IBAction)clickToDisplayImage {
[text resignFirstResponder];
if([imageArray count] >0)
{
[imageArray removeAllObjects];
}
int totalImages = [text.text intValue];
for(int i=0;i<totalImages;i++)
{
[imageArray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"%d.png", i]]];
}
[tableView reloadData];
}
Hrm. Je ne sais pas pourquoi les gens sont en train de voter ici. Assez clair quelle est la question ici. – RedBlueThing
Avez-vous pu résoudre le problème que vous aviez? – RedBlueThing
pas encore ......... – Christina