ページ 11

iPhoneで表の表示

Posted: 2010年12月07日(火) 22:15
by Beats
iPhoneで表の表示を行いたいです。
色々と調べてみたのですが参考になりそうなサイトを見つけることができませんでした。

データはNSArray型で入れ子?のように取得されております。

コード:

[[test objectAtIndex:0]objectAtIndex:0] ・・・ 1
[[test objectAtIndex:0]objectAtIndex:1] ・・・ あいうえお
[[test objectAtIndex:0]objectAtIndex:2] ・・・ ABC
・・・
イメージとしましては下記の様な感じでユーザーが編集出来ない(Excelではない)ようなものにしたいです。
ただ文字と線?だけが表示されるような感じです。
画像

お分かりになる方がおりましたらお手数おかけしますが助言を頂けないでしょうか?

Re: iPhoneで表の表示

Posted: 2010年12月08日(水) 02:52
by Justy
 UITableViewを使って表示するのが汎用的だと思います。
 
 その独自の見た目は UITableViewCellのサブクラス作って1行分のデータを表示できるようにUILabelなどをレイアウトし(IBを使うと楽です)、UITableViewCellの代りに使えばいいかと。

[Customizing Cellsの項目参照]
http://developer.apple.com/library/ios/ ... Cells.html

[サンプル - TouchCells]
http://developer.apple.com/library/ios/ ... Intro.html

※ 「UITableViewCell 継承」で検索するといろいろ出てくると思いますので、そちらも調べてみるといいでしょう。

Re: iPhoneで表の表示

Posted: 2010年12月09日(木) 11:00
by Beats
Justyさん
参考になりそうなURLまでありがとうございます。
調べてみて一つのセルに2行?乗せるようなことはできました。
※継承のやり方は理解できました。
本当にありがとう御座います。

下記の様な感じになっております。
しかし私のやり方が悪いこともあって画像の様な表?を作ることが出来ません。
画像の様な一部分(端から端までではなく)が表でといったスタイルにしたいのですがこのようなことをしている所が見つかりませんでした・・・。
わかりにくい質問で申し訳ないのですがもう一度助言を頂けますと助かります。

コード:


- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
    if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
		nameLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, self.contentView.frame.size.width-20, self.contentView.frame.size.height*0.4)];
		nameLabel.font = [UIFont boldSystemFontOfSize:16];
						  
		
		valueLabel = [[UILabel alloc] initWithFrame:CGRectMake(35, self.contentView.frame.size.height*0.5-1, self.contentView.frame.size.width-20, self.contentView.frame.size.height*0.5)];
		// valueLabel.textAlignment = UITextAlignmentRight;
		valueLabel.font = [UIFont systemFontOfSize:14];
		
		[self.contentView addSubview:nameLabel];
		[self.contentView addSubview:valueLabel];
		
	//	self.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
//		[self.imageView setImage:[UIImage imageNamed:@"back.png"]];
    }
    return self;	
}


Re: iPhoneで表の表示

Posted: 2010年12月09日(木) 11:04
by Beats
すみません><
間違えて解決マークをつけてしまいました。
もう一度トピックを立て直した方が良いのでしょうか?

Re: iPhoneで表の表示

Posted: 2010年12月10日(金) 02:06
by Justy
Beats さんが書きました:しかし私のやり方が悪いこともあって画像の様な表?を作ることが出来ません。
 あとは枠のラインがひければいいわけですよね?
 
 UITableViewCellのサブクラスに drawRectメソッドを作って Core Graphics (Quartz) API(Pathsあたり)を使って枠を引けばいいかと思います。


# でも、そういう表の枠一列分の素材を用意して、イメージとしてセルの中に入れてしまうのが一番楽かもしれませんね。