Dans mon application, j'utilise une table personnalisée. Chaque cellule a un uibutton et uiimage. Quand une touche apparaît sur le bouton, je veux appeler la méthode uiimagepickercontroller pour sélectionner une image de la bibliothèque de l'iphone et l'afficher dans la vue de l'image. Je l'ai écrit mais en recevant un avertissement ... 'customCell' peut ne pas répondre à presentmodalviewcontroller animé ... ici customCell est la sous-classe de ma classe principale, myApp, aussi le nom de la plume de la cellule personnalisée. Quelqu'un connaît le problème? Merci ...Problème avec uibutton dans UItableViewCell
EDIT
- (IBAction)selectExistingPicture1 {
if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypePhotoLibrary]) {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsImageEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:picker animated:YES];
[picker release];
}
else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error accessing photo library" message:@"Device does not support a photo library" delegate:nil cancelButtonTitle:@"Drat!" otherButtonTitles:nil];
[alert show];
[alert release];
}
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
CGSize newSize = CGSizeMake(80, 80);
UIGraphicsBeginImageContext(newSize);
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
imageView.image = newImage;
[picker dismissModalViewControllerAnimated:YES]; //warning shown here
}
Ceci est la classe de cellule personnalisé .. et la classe viewController a ...
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CustomCellIdentifier = @"CustomCellIdentifier";
CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CustomCellIdentifier];
if (cell == nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:nil options:nil];
for (id currentObject in nib){
if ([currentObject isKindOfClass:[CustomCell class]]){
cell = (CustomCell *)currentObject; break;
}
}
}
NSUInteger s= indexPath.section;
//[cell setText:[NSString stringWithFormat:@"I am cell %d", indexPath.row]];
NSUInteger r = indexPath.row;
cell.imageView.image = nil;
for (s;s==0;s++)
for(r;r==0;r++)
{
UIImage *img=imageView.image;
cell.imageView.image = img;
}
return cell;
}
Je l'ai fait avec l'uibutton dans la cellule .. importé des images de la bibliothèque à la vue de l'image de chaque cellule. Mais le nouveau problème est qu'ils disparaissent en faisant défiler la table ... – Nithin
dois-je chane quelque chose dans le cellForRowAtIndexPath: méthode ?? – Nithin
Merci patron. @Thomas – Ramdy