J'ai un UIController et comme vous le savez tous UIController
est associé à une vue et vous pouvez y accéder en utilisant les méthodes de lecture et setters qui sont synthétisésRéglage du frame.size à l'aide de l'opérateur point
UIController controller = init code ..
.. controller.view
-> cela me donne mon objet UIView
qui a conservé et autoreleased, ce sera synthétisé méthode get (le cas échéant ma compréhension synthétisé getMethod est correct)
controller.view.frame -> this gives me my CGRect struct
controller.view.frame.size -> CGSize struct
pourquoi ca nnot j'attribue une valeur directement à cette structure de cadre
controller.view.frame.size.width = 20;
pour la déclaration ci-dessus je reçois cette erreur « lvalue nécessaire comme opérande gauche d'affectation »
Ceci est un opérateur de point normal c Je pense que cela devrait fonctionner S'il vous plaît éclairer si je manque quelque chose
Cette question est la raison # 1 pourquoi je pense que la syntaxe de point n'aurait jamais dû être introduite dans Objective-C. Cela provoque la confusion et était totalement inutile. –
"Ceci est un opérateur de point c normal"> Non, ce n'est pas le cas. Les deux premières choses qui reçoivent l'opérateur sont des objets, et les objets n'existent pas dans C. Par conséquent, ceci * ne peut pas * être un opérateur de point C "normal". (Techniquement, les deux premières choses structurent les références, ce qui veut dire que vous voudriez utiliser l'opérateur fléché '->', mais vous vous frayez un chemin dans l'accès direct et externe aux variables d'instance, ** QUI EST TRÈS MAUVAIS **) –