2011-05-07 3 views
3

J'ai créé UIButtons dans UITableViewCell. Il affiche correctement dans l'iphone. Mais quand je mets à jour cette application pour iPad, les boutons UI sont déplacés vers la droite et sortent des limites de la table. Voici mon codeUIButtons dans UITableViewCell pour l'ipad

UIButton *button2 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button2 setFrame:CGRectMake(47.0f, 100.0f, 16, 16.0f)]; 

[button2 setImage:[UIImage imageNamed:@"Delete.png"] forState:UIControlStateNormal]; 
[button2 addTarget:self action:@selector(delete:) forControlEvents:UIControlEventTouchUpInside]; 
[cell addSubview:button2]; 



return cell; 

Répondre

2

Vous devez probablement ajouter le bouton au contenu de la cellule, et non directement à la cellule. Vous pouvez également placer l'origine du cadre du bouton par rapport à la taille de l'image du contenu, + régler le masque d'autorésisation du bouton afin qu'il soit placé correctement en fonction de la taille de la cellule (qui peut changer selon le type d'appareil et/ou l'interface orientation).

+0

Merci ..Il affiche correctement – iProgrammer

+0

hey j'ai un problème similaire, j'ai ajouté le bouton sur la vue du contenu de la cellule et également définir les masques de redimensionnement des automobiles, mais le problème est que lorsque l'application i s lancé le bouton droit n'est pas visible, une fois que je fais l'orientation changer ou cliquez sur un autre bouton le bouton devient visible ... Pouvez-vous suggérer que dois-je faire? – Swati

+0

Il est peut-être préférable de poser une nouvelle question juste pour cela, et probablement d'inclure le code de votre méthode cellForRowAtIndexPath:. –

0

Veuillez essayer celui-ci. Dans votre code, supprimez [cell addSubview: button2]; ajoutez write there [cell.contentView addSubview: button2]; et aussi pour supprimer le chevauchement de la cellule ou pour supprimer les cadres de dérangement ajouter ceci pour la boucle avant que toute la vue du contenu de la cellule ne soit allouée.

pour (UIView * vue en cell.contentView.subviews)

{

[view removeFromSuperview]; 

}

vous pouvez ajouter ici UIButtons UILabels, etc ...