私のアプリでは、UITableViewの上部にフロートするUIViewがあります(Visualise:ナビゲーションバーの下部にアタッチされています)。iOS5では、scrollViewDidScrollのこれらのコード行を使用して上部にフロートすることができました。
// get the table and buttonView bounds
CGRect tableBounds = self.tableView.bounds;
CGRect buttonViewFrame = self.buttonView.frame;
// make sure the buttonView at the table's original x and y as the content moves
self.buttonView.frame = CGRectMake(tableBounds.origin.x,tableBounds.origin.y,buttonViewFrame.size.width,buttonViewFrame.size.height);
ただし、これはiOS6では機能しなくなったようです。問題を解決する理由や方法を知っている人はいますか?iOS5以降をサポートしています。
iOS6のリリースノートを調べたところ、これが見つかりました...
ビューと、スクロールビューのスーパービューなど、スクロールビューのサブツリーの外側にあるビューとの間に制約を作成することにより、スクロールビューのサブビューを他のスクロールコンテンツ上でフロート(スクロールではない)に見せることができることに注意してください。
iOS5をまだサポートしているので、ストーリーボードでAutoLayoutを使用しないようにコードでこれを設定するにはどうすればよいですか。また、iOS5で使用していたコードが6で機能しなくなった理由について、誰かに教えてもらえれば素晴らしいと思います。