- 2010年2月23日 22:31
- iPhone
今日気がついたこと。
通常は、ナビゲーションバーを黒くする時、
navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque;
とやらずに、
navigationController.navigationBar.tintColor = [UIColor blackColor];
とすると、navigationBarにつけたUIBarButtonItem がクリックしても反転しない。UISegmentedControllはどちらが選択されているかが分からなくなる。色付けると駄目ぽい。
でも、クリック判定は受け付ける。謎。
※toolbarを上に持っていった方が使い勝手が良いよとアドバイスもらいました。
さて、UIViewにUITableViewを貼付けるというのに挑戦しました。
あるUIView内にリストを表示しようと。
当初はUIScrollViewにラベル貼付けで実装しようかと思いましたが、なんてことない、UITableViewを使えばよかった。何となくViewControllerでしか使ったこと無かったので、イメージできませんでした。。。
やり方は簡単。
@interfaceにUITableViewDelegate,UITableViewDataSourceプロトコルを追加すればOK。
こんな感じ。
@interface MyView :UIView < UITableViewDelegate, UITableViewDataSource >
後は、@implement内でUITableViewインスタンスを作成する。
initWithFrame:でUIViewの大きさでframeを作成。
myTableView = [[UITableView alloc]initWithFrame:CGRectMake(15.0, 20.0, 245.0, 230.0)];
myTableView.backgroundColor = [UIColor clearColor];
myTableView.alwaysBounceVertical = YES;
myTableView.showsHorizontalScrollIndicator = NO;
myTableView.dataSource = self;
myTableView.delegate = self;
//セルの高さ、ボーダー設定
myTableView.rowHeight = 28.0;
myTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
はじめdataSouceを設定していなかったので、テーブルに表示されなかった。当たり前かぁ。
後は、UITableViewの下記を追加すればできあがり。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection(NSInteger)section
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Tweet- Newer: iPhone スレッドで処理する
- Older: iPhone UIColorの色変換
Comments:0
Trackbacks:0
- TrackBack URL for this entry
- http://www.hirano-dept.com/mt/mt-tb.cgi/86
- Listed below are links to weblogs that reference
- iPhone UIViewにUITableViewを貼付ける from 袖触れ合うも多少の縁