私はコントロールの位置を設定する最も簡単な方法を見つけようとしています。iPhone>コントロールの位置を設定する
だから、これはオブジェクト+ 100pxに設定して動作します:
[panel setFrame:CGRectMake(
panel.frame.origin.x, panel.frame.origin.y + 100,
panel.bounds.size.width, panel.bounds.size.height)
];
をしかし、もちろん、これは痛いです。
残念ながら、これは動作しません:
panel.frame.origin.y += 100; // Compiler error
[panel setPosY:100]; // has no effect of my control
が位置を設定する簡単な方法はないですか?
panel.center = CGPointMake(panel.center.x, panel.center.y + 100);
おそらくこれを行うための最も簡単な方法です:
、 – rluba
ああ、あなたの両方のおかげで、 は私が名前「センター」 について混乱していた。しかし、なぜ、これは直接ではありません:-)私のものよりも優れで許可される方法Obj-C? panel.center.y + = 100; –
これはプロパティのトリックです。 panel.centerは実際にはCGRect構造体を返すメソッド呼び出しです。オブジェクトのフレームインスタンス変数に直接アクセスすることはできません。したがって、その構造体を変更すると、元の構造体(オブジェクトのメモリ空間内)は変更されません。 –