2012年10月01日

objective-c table viewとstoryboard

お願いします♪いいねとかつぶやいたりして下さい
 

参考
http://rapidstream.net/blog/2012/0512153643/
http://d.hatena.ne.jp/ar_tama/20120104/1325665506



TableViewControllerは使わない方法。

1 ViewController(新規View)を2つ配置。(遷移前のテーブル画面、遷移後の画面)
2 TableView、TableViewCellを上に配置。

3 1 を ViewControllerと関連づけ

4 ViewController.h を変更
#import <UIKit/UIKit.h>

//delegateを複数使う
@interface ViewController : UIViewController <UITableViewDataSource,UITableViewDelegate> {
    IBOutlet UITableView *tableView_;//テーブルビューの名前
}

@end



5 ViewControoler.mを変更
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
	// Do any additional setup after loading the view, typically from a nib.
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}


//テーブル用メソッド
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return 56;//行の高さ これは無くてもいい
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    // Return the number of sections.
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    // Return the number of rows in the section.
    return 20;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    
    // Configure the cell...
    cell.textLabel.text = [NSString stringWithFormat:@"%d",indexPath.row];
    
    return cell;
}

//画面遷移
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
    [ud setValue:[NSString stringWithFormat:@"%d", indexPath.row] forKey:@"num"];
    
    [self performSegueWithIdentifier:@"rowNumber" sender:self];
}


@end



6 配置したテーブルセルを選択し、Identifierを tableCell に変更

7 StoryboardのViewControllerをctrlドラッグし tableview_ と TableView を結びつける

8 StoryboardのTableViewをctrlクリック、Viewcontrollerに datasouce と delegateを結びつける

9 テーブルセルから遷移先のviewへctrlドラッグ。

10 9でできた間のsegueを選択し、 identifierに rowNumberと入れる。






関連するタグ:
あなたにとって有用な記事でしたか?是非ブックマークしておくことをおすすめします。
 




ライブラリを配布しちゃったり
webデザイン
Fireworks
HTMLコーディング
CSS
Dreamweaver
携帯サイト
webプログラム
PHP
正規表現
cakephp
MYSQL
javascript
webマーケティング
adwords
analytics
windows7
ショートカットキー
おすすめ情報
サイト
facebook
ライブラリ
配布
アプリ
iphone
ipad
サーバー
さくらサーバー
全ての記事を読む




トップ - 最新の記事一覧 - お問い合わせ