Modifier image par programmation avec mise en page automatique
J'ai un UITableView
avec mise en page automatique et j'ai besoin d'en réduire la hauteur lors de la GADBannerView
apparaît au bas de l'écran.
Malheureusement avec mise en page automatique est impossible de modifier le cadre. La solution est de retirer la mise en forme automatique et définir le cadre manuellement. C'est très dangereux car toutes mes applications fonctionne très bien sur de 3,5 et 4,0' affichage et la suppression automatique de mise à provoquer une nouvelle phase de test et plus d'effort.
Est-il un moyen de changer de cadre, même si la mise en page automatique est activé ?
- créer une prise de courant pour votre contrainte et modifier sa valeur à chaque fois que votre
GADBannerView
apparaissent. - pouvez-vous mieux expliquer avec un exemple s'il vous plaît ?
- Ok, vérifier ma réponse
- Comment mettre à jour la hauteur constante de la contrainte d'une UIView par programmation?
Vous devez vous connecter pour publier un commentaire.
Laissez votre
UITableView
contraintes à fond la mise en page est définie sur 0, faire unIBOutlet
. Maintenant, laissez votreGADBannerView
la hauteur est de 40 afin de changer votreoutlet.constant = 40;
Pour en savoir plus sur la façon de faireIBOutlet
et modifier sa valeur regarder dans cette ou cette espère que cela aidera.Edit: Pour ceux qui cherchent par exemple, suivez ces étapes simples (Parce que c'est accepté de répondre, je pense qu'il est utile de disposer d'un exemple. Crédit @manujmv pour cet exemple)
Créer une hauteur de contrainte pour votre point de vue dans votre interface.
Puis ajouter un IBOutlet objet dans votre classe pour cette contrainte.
Par exemple:
@property (faible, nonatomic) IBOutlet NSLayoutConstraint
*heightConstraint;
Connectez cet objet dans votre panneau de connexion.
Puis modifier la valeur de cette contrainte, toutes les fois que vous besoin d'
auto.heightConstraint.constante = 40;
self.translatesAutoresizingMaskIntoConstraints = YES;
à votre point de vue aurait probablement enlevé la nécessité de modifier la contrainte des constantes.Plutôt que d'essayer de changer l'image de la vue, ajoutez une hauteur de contrainte de l'utilisation de l'auto mise en page et de réduire la valeur de cette contrainte. Effectuez les étapes ci-dessous:
Puis ajouter un IBOutlet objet dans votre classe pour cette contrainte. par exemple,
Connectez cet objet dans votre panneau de connexion.
Puis modifier la valeur de cette contrainte, toutes les fois que vous besoin d'
Une chose de plus, vous devez appeler
[self.view layoutIfNeeded];
méthode une fois que vous changne les contraintes.Profiter 🙂
Vous pouvez trouver de contrainte comme ça