0

iOSでは、ボタンのフレームサイズを次のように設定できますか

btn1.frame = CGRectMake(20.5, 113.5, 92.5, 93);
btn2.frame = CGRectMake(113.0, 113.5, 186, 93);

10 進数値を設定するか丸めるか

私にとって、4 インチのシミュレーター ディスプレイでは、ボタンはこれら 2 つの間に隙間なく適切に表示されます。しかし、3.5 インチ シミュレーターのディスプレイでは、2 つのボタンの間に隙間ができます。なんで?

4

3 に答える 3

1

CGRecthasCGPointCGSizewhich はすべてから派生し、CGFloatwhich は from から派生していfloatます。

それはfloatすべての人にとって価値を保持できますがCGRect cordinates、そうではありませんround

于 2012-10-23T08:37:07.627 に答える
0

f10 進数の末尾に記述することで、数値に 10 進数値があるかどうかを指定する必要があります。

これは、数値に小数部分があることを示しています。

そして、あなたのコードでは、これはうまくいくはずです:

btn1.frame = CGRectMake(20.5f, 113.5f, 92.5f, 93);
btn2.frame = CGRectMake(113.0f, 113.5f, 186, 93);
于 2012-10-23T09:01:54.537 に答える
0

はい、ボタンのフレームに float 値を指定できます。

button.frame = CGRectMake(20.5, 113.5, 92.5, 93.0);

またCGRectIntegral、小数値を同等の整数に変換するために使用します。
フレームをボタンに割り当てた後、これを書くだけです-

button1.frame = CGRectIntegral(button1.frame);
button2.frame = CGRectIntegral(button2.frame);

フレームNSLogの前後で効果を確認できます。 例:-button

button.frame = CGRectMake(20.5, 113.5, 92.5, 93.0);
NSLog(@"Before - %@",NSStringFromCGRect(button.frame));

button.frame = CGRectIntegral(button.frame);
NSLog(@"After - %@",NSStringFromCGRect(button.frame));

詳細については、これを参照してください-CGRectIntegralおよび Stackoverflowの回答に関するAppleのドキュメント

于 2012-10-23T09:19:23.843 に答える