Comment faire un sous-vue redimensionner automatiquement avec son superview?
J'ai une vue qui contient une sous-vue; cette vue contient lui-même un autre sous-vue, qui est destiné à être légèrement plus petit que son superview.
Je suis la création de la première sous-vue de plein-taille de l'écran, puis d'en réduire la taille à une taille très petite à l'écran. Lorsque la sous-vue est approché, je l'animer de sa petite taille plein écran.
Le problème est que ma deuxième sous-vue jamais redimensionne au cours de cette animation, il est toujours rendu complet de la taille et déborde les limites de son superview.
Est-il un moyen simple d'obtenir une sous-vue de garder lui-même de taille moyenne, proportionnellement, que son superview des changements de taille?
OriginalL'auteur MusiGenesis | 2011-03-29
Vous devez vous connecter pour publier un commentaire.
vous pourriez ajouter d'un redimensionnement automatique-comportement par programme
Objective-C
Swift 3.x
Swift 2.x
Dans Interface Builder accédez à l'onglet 3 et cliquez sur les flèches dans le milieu ;D
Une autre solution pourrait être de mettre en œuvre les setFrame-méthode et toujours s'adapter à la taille de la superview (pas le cadre.taille). N'oubliez pas de mettre l'origine que vous en avez besoin.
#import <UIKit/UIKit.h>
Eh bien, cela fonctionne, mais il ne semble pas être le redimensionnement de la sous-vue proportionnellement. Si j'augmente la largeur de la superview par un facteur de 2, la largeur de la sous-vue augmente par un facteur de 4. Est-il possible d'obtenir la sous-vue de maintenir sa taille proportionnelle par rapport à la superview?
vous avez ajouté un supplément de "Masque" de ces constantes.
La d'un redimensionnement automatique est utilisé pour redimensionner proportionnellement exactement à la taille de la superview. Et c'est là que réside le problème. Si vous configurez le cadre de la vue (pas superview) par programmation, il va changer toute l'apparence de la vue. Avez-vous quitté votre code-extraits où vous avez changé le cadre de la sous-vue?
Je ne comprends pas ce que vous dites. La seule fois où j'définir par programmation le cadre de la sous-vue est dans le superview de
initWithFrame
méthode (dans laquelle j'ai créer la sous-vue avec alloc/initWithFrame et définir son d'un redimensionnement automatique de masque). Par la suite, lorsque je change la taille de la superview de la programmation, mon espoir est que la sous-vue maintiendra sa taille proportionnellement à la superview, mais ce n'est pas le cas.OriginalL'auteur Lepidopteron
cela fait l'affaire pour moi
OriginalL'auteur Juraj Petrik
Si vous utilisez uniquement des [.flexibleWidth, .flexibleHeight] d'un redimensionnement automatique pour votre masque, votre sous-vue ne sera pas redimensionnée proportionnellement. La bonne réponse est:
OriginalL'auteur andrei