私はinitWithFrame
で作成したUIViewを持っています。私は、ビュー(およびこのような他のビュー)を押すとUIViewは2つの異なる方法で異なった方法で報告します
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"center: %f",self.center.x);
}
、それらはすべてが正常で彼らの中心点として理にかなって数を記録:
は、いくつかのタッチ対話をテストするために、私は次のことをやりましたビューのスーパービューの座標空間。 メソッド内で同じログステートメントを実行すると、self.center.x
はビューのスーパービューのスペースに座標を報告しません。代わりに、境界の中心となる点をレポートします。つまり、ビューが100ピクセル幅の場合は、すべてのビューに対して
50
と報告されます。
私は理解できないことは、フレームがCGRect
に渡され、ビューが適切な場所に表示されるため、これらのビューは移動せず、フレームはinitWithFrame
の先頭にはっきりと設定されているということです。それで、なぜその方法でその中心だけを正しく報告しないのですか?
あなたはinitWithFrameを投稿できますか? – danh