Comment inverser le système de coordonnées d'un NSView?
J'ai créé un NSScrollView dans interface builder qui a un nombre variable de semi-unique NSViews que la programmation peut faire ajoutés ou retirés. Quand j'ai ajouter des sous-vues à la documentView, ils apparaissent dans le coin inférieur gauche au lieu de le coin supérieur gauche. Je vois que vous pouvez vérifier la isFlipped booléen pour savoir si le point de vue du système de coordonnées est retournée, mais je ne peux pas trouver un moyen de le définir comme renversé.
Ce que quelqu'un sait ce que je suis absent?
Vous devez vous connecter pour publier un commentaire.
Dans votre
NSView
sous-classe, remplacerisFlipped
:Source: isFlipped - NSView | Apple Documentation du Développeur
Pour tous ceux qui souhaitent faire cette Swift voici comment vous remplacer dans votre classe personnalisée:
isFlipped
parce qu'ils savent comment la vue est attirée.L'idée est que chaque point de vue a sa propre façon de dessiner lui-même (par exemple, à l'aide de l'homme-calculé chemins) qui pourrait être vraiment motivé si vous basculer soudainement ses coordonnées avion (rasters peut-être bien alors que les routes se dessiner à l'envers, les calculs peuvent placer des choses hors de l'écran, etc.). Il n'est donc pas réglable, mais les sous-classes peuvent spécifier
isFlipped
car ils doivent certainement savoir comment la vue est attirée.Les sous-classes peuvent également rendre paramétrables, mais ensuite, ils doivent s'attendre à le changer à tout moment.
Que pour le code, voici Jay répondre dans Swift 3:
Depuis Carl Carlson demandé, voici Jay répondre en Objective-C:
En-tête (
.h
)De mise en œuvre (
.m
)