初心者のJavaプログラミング

プログラミングガチ初心者がIT業界を目指して頑張ります。

UIViewControllerでUITableViewを表示させる

方法を教えて下さいw
今回は説明とかではないですw
設定画面とかだと、UITableViewController使うと思うんですが、
一部だけテーブルっぽくしたいなーと思ったので調べました。
ここまではいったんですけど、この謎の余白が消えなくて困っていますw
f:id:fightingneetkun:20140726212441p:plain

青→ViewControllerの持っているviewの背景を青にしてます。
黒→viewDidLoad内でtableViewを作って、viewControllerのviewに貼付けています。tableViewの背景は黒です。
黄→contentViewの背景を黄色にしてます。

そんで後は普通にセルの数とかセクションの数とかセルの生成をするメソッドを作りました。

そんでこの黒い謎の余白が消えなくて困っている次第でございますw

contentViewのx座標とy座標をtableViewのx座標とy座標に合わせればいいのかな?
と思ってやってみましたが効果なしです。

うーむ。。。

追記)
2014/07/26

多分解決しました!
tableViewオブジェクトに対して、setContentOffsetメソッドをしてあげるといいみたいです。
setContentOffsetはスクロール画面の初期位置を指定するメソッドらしく、いろいろいじくったらうまく行きました。
でもこれだけではだめで、以下のこともしてあげないとうまく行きませんでした。

_tableView.tableHeaderView = [[UIView alloc]init];

結局最終的にはどうやったかというと、

_tableView.tableHeaderView = [[UIView alloc]init];
[_tableView setContentOffset:CGPointMake(0, 64)];

って感じにしました。この64というのは多分UINavigationのバーの高さのことなのかなと思いました。たしか64でしたよね?
なので、tableViewを作ると自動的に上に空白が出来るようになっているのかなと予想。
なのでスクロール画面の初期位置を変えないとだめぽなんですかね。
なんか釈然としませんが、とりあえずできたみたいなので、これで夢がひろがりんぐになりました。きっと仕組みを理解したりするのは後からついてくるはず!納得いかないと止まっているよりも、とりあえずやって行くというのが大事なのだ!と自分に言い聞かせるw

もっと簡単な方法ありそうだし、そもそもtableviewのbackgroundColorをclearColorにすればいいんじゃないかとついさっき思いました。
でも前まではこんなことできなかったのに、今はなんかいいメソッドないかなーとか考えることができるようになったので、成長はしてきたのかなと思います!自己満!w

最後に努力の結晶のスクリーンショットをぱしゃり。
f:id:fightingneetkun:20140726222444p:plain