私はそこに複数のセルがあるテーブルビューを持っています。スーパービューの座標空間ではなく、テーブルビューの座標空間で、セルのフレームを取得したいと思います。テーブルビューの座標空間でテーブルビューセルのフレームを取得するにはどうすればよいですか?
絵は、おそらくこれは、より良い
は赤い四角形を参照してください説明するだろうか?これがテーブルセルのフレームです。青い矩形はテーブルビューのフレームです。青い矩形に相対的な赤い四角形を取得したいと思います。
frame
プロパティをUITableViewCell
としました。しかし、それは(0、0、320、44)を返すので動作しません。明らかに、セルが画面の上部にないので、Y値はゼロであってはなりません。
テーブルセルのスーパーは、テーブルビューではない、明らかにこのUITableViewWrapperView
であるため、ビュー階層によると、これは、意図した動作です:
テーブルビューは、このている間:
だから、私はテーブルビューのフレームを表しCGRect
を得ることができる方法/プロパティがありますテーブルビューの座標空間にあるセル?
座標空間内のCGRect
を別の空間に変換できる機能があると思います。しかし、私はその名前とその使い方を忘れていました。私はそれがこの状況で役に立つのかどうかわかりません。
'rectOfCellInTableView'何であるコードの下に使用してください?あなたは 'rectOfCell'を意味しましたか? – Sweeper
これは私のためには機能しません。 'convertRect'メソッドはセクションヘッダーの高さを考慮していないようです。 rectは表のセルより少し上にあります。すなわち、いくらかの-yオフセットを有する。 – Sweeper
次に、セクションのrectを取得して、セルのy +(heightOfCell)(indexPath.row)を追加して、セルyの位置を取得することができます。 –