高さ分だけ増やしていました。高さを減らしています。コードを書いています。00:34こんなのはどうでしょう?的外れでしたらごめんなさい。08:12kouichiさん:たびたびありがとうございます。サンプルとを比較してみると、ナビゲーションコントローラー内のRootViewControllerに相当するところがUINavigationControllerを継承していたり、表示するビューのxibファイルでTableViewを再定義していたり(NavigationControllerでTableViewは自動的に作られるはず)と、幾つか問題があることが分かりました。それを修正してもまだ直っていないので、kouichiの方法も含めて見直してみます。ありがとうございます。08:25ohnoさん:ありがとうございます。autoresizingMaskプロパティは知りませんでした。ビューの関係が適切であればきちんとリサイズしてくれそうですね。こちらはまだ試していないのですが、試してみますね。ありがとうございます。※ちなみに今も同じ現象が出ています。13:08わかりました!そして意図通りテーブルがリサイズ&再描画されるようになりました!別記事でまとめます。皆さん、ありがとうございました。17:56ちょっとしたことなんですがメモメモ。タブやナビゲーションバーを表示していると、「表示可能な領域って今はいったいどれだけ?」と思うことがあります。開発中のサイズ調整なんかではけっこう苦労するわけで。それを調べる方法です。431.000000みたく表示されます。※この値は右の画像でピンク色になっている部分の領域を調べています(ピンク色のビューコントローラ上に書いた、ということです)。self.view.boundsでも情報は取得出来たのですが、これだと320x480が返ってきてしまいました。touchはメモリ管理形式にリファレンスカウンタ形式を用いています。このリファレンスカウンタと、プロパティとの振る舞いでちょっと不安になったので、調べてみました。試したのは以下のコードです。:@end気になったのは、代入時にretainしてくれるのはともかくとして、別の値を代入した時(上記ソースのコメントがある箇所です)にきちんとreleaseしてくれるかどうか、という点です。retainCount:1上記の実行結果のとおり元々セットされていたオブジェクトもきちんとreleaseされていました。問題なく、杞憂だったわけです。よかったよかった*1。・・・いやいや、上記だけだと誰にとっても限りなく意味のない情報になってしまいますので、プロパティを「assign」にしたときの結果も載せておきます。retainCount:1このとおり、retainCountは変化しませんでした。最初にinitWith...で作ったときの値1のままで、変化していないことが分かります。オブジェクトへのassignプロパティは、「対象クラスにこのオブジェクトの所有権を持たせない」という意味にもとれますね。■もう1つついでに最後にもう1つ。2.0ではない)にも対応させたい場合には使用出来ません。当時はどうやっていたかを参考として記述しておきます。これらはいずれもヒレガス本(Amazonインスタントストア)に書かれている方法です。retain];}それぞれのメリット・デメリットを以下に記しておきます。これでやっておけば取りあえず問題無し。毎回retain&release処理が入ってしまう。毎回比較処理をおこなう必要有り。パフォーマンスの悪化。あと、取り扱いのミスが即クラッシュに繋がる。※最後にチラリと書きましたがautoreleaseのパフォーマンス悪化についてはiPhone開発では注意が必要です。そのうちちゃんと測って記事にしようと思っていますが、autoreleaseを使うよりもinit&releaseの方が処理が速いみたいですよ。自分の場合、楽な構文やライブラリができると、その裏側がどうなっていたかをついつい忘れがちになります。今回のように、気になったときはきちんと確認しないといけないな、と自戒の念を新たにするのでした。※hiroaki310さん、Twitterで的確なコメントをしていただきありがとうございました。*1:最初はinitWithString:@"..."で作成したのですが、これだとretainカウントが-1、ではなくて2147483647(id:tokoromさん、ありがとうございました)になっていて計測できませんでした。23:30retainCountの件、便乗して記事書かせていただきました。http://iphone-dev.g.hatena.ne.jp/tokorom/20090706/1246890179iPhoneの実行環境では、initWithString:@"..."のときのretainCountは-1ではなく2147483647になってます。解放不要なオブジェクトはretainCountとしてNSUIntegerのMAX値(iPhoneではNSIntegerのMAX値)を返すようになってるみたいです。同一のオブジェクトかどうかは"=="で判定できます。内容の比較は、NSStringなら"isEqualToString:"、その他のクラスでは"isEqual:"で比較することになります。"isEqual:"の比較内容はクラスによって違うので注意が必要...と、たしか荻原本にありました。この比較の際にまたコストがかかるようだと、あまり意味ないですね。12:12tokoromさん、ありがとうございます。私も最初はinitWithString:@"..."を試したのですが、このときのretainCountは-1ではなく2147483647になってしまって、減っているかどうかが分からずに困ってしまいました。NSStringの実装の裏側では、状況によって色々なクラスが暗躍しているのが垣間見えて、なかなか面白かったです。あと、私よりも参考になる記事を書いていただいてありがとうございます。日本のiPhoneアプリ開発が活発化すると良いですね。horigoodさん、仰るとおりです。私の説明が不足していたのですが、オブジェクトがNSString以外の、比較にコストのかかるオブジェクトだとすると、どれを選ぶかで検討が必要だと思います。Appleのデベロッパーも「Macとは違うから。二度言うけれど違うから」と言っていますので、やっぱり意識しないといけないですね。16:33コメントで一部間違ったことを言ってました。retainCountが「-1」になったり「2147483647」になったりするのはiPhoneどうこうって話じゃないですね。00:59ご指摘ありがとうございました。