私のアプリでは、CGRectFromString を使用して UIButton の位置を設定したいと考えています。私のコードはそのように
NSString *g = @"{0,0},{100, 100}";
CGRect rect = CGRectFromString(g);
self.button1.frame = rect;
しかし、仕事ではありません。私が見逃しているもの、またはそれはアップルのバグですか??
これを使用してフレームを設定できます。正常に動作します。このリンクをたどってCGRectに目を向けてください
CGRect optionsFrame = {{0, 0}, {100, 100}};
self.button1.frame = optionsFrame;
または、本当に使用したい場合はCGRectFromString
、相馬の変更を行ってください
NSString *g = @"{{0,0},{100, 100}}";
お分かりできると良いのですが..:)
このようにしてみてください....
NSString *g = @"{{0,0},{100, 100}}";
CGRect rect = CGRectFromString(g);
self.button1.frame = rect;
それはパフォーマンスの点で悪い考えです。ランタイムを使用CGRectFromNSString
すると文字列を解析する必要があり、コストがかかります。この四角形が本当に一定である場合は、次のシングルライナーを使用する必要があります。
CGRect optionsFrame = (CGRect){{0, 0}, {100, 100}};
キャスト(CGRect)
は、コンパイラの苦情や警告を防ぐためにここにあります。
なぜ使用しないのCGRectMake
ですか?
self.button1.frame = CGRectMake(0,0,100,100);