UITableViewは画面外のセルは全て破棄してるからスクロールする時は再描画が必要なわけで、heightForRowAtIndexが毎回呼ばれるのは正しい