iOS求生之路二(点击segment管理tableView)

来源:互联网 发布:nodejs 数组 push 编辑:程序博客网 时间:2024/05/16 02:28

//

//  ViewController.m

//  Segment

//

//  Created by JesseWang on 5/23/12.

//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.

//


#import "ViewController.h"

#define kFirstSegmentedIndex 0

#define kSecondSegmentedIndex 1

@implementation ViewController

@synthesize segmented;

@synthesize firstTableView;

@synthesize secondTableView;


- (void)didReceiveMemoryWarning

{

    [super didReceiveMemoryWarning];

    // Release any cached data, images, etc that aren't in use.

}


#pragma mark - View lifecycle


- (void)viewDidLoad

{

    [super viewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{    

    switch (segmented.selectedSegmentIndex) {

        case kFirstSegmentedIndex:

        {

            return 3;

        } 

            break;

        case kSecondSegmentedIndex:

        {

            return 8;

        } 

            break  

        default:

            return 0;

            break;

    }

}




- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath 

{

    NSUInteger row = [indexPath row];

    switch (segmented.selectedSegmentIndex) {

        case kFirstSegmentedIndex:

        {

            static NSString *cell1 = @"FirstCell";

            

            UITableViewCell *firstCell = [tableView dequeueReusableCellWithIdentifier:cell1];

            if (firstCell == nil) {

                firstCell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cell1] autorelease];

            }

            firstCell.textLabel.text = @"FirstTableView";

            return firstCell;

        }

            break;

        case kSecondSegmentedIndex:

            {

                static NSString *cell2 = @"SecondCell";

                UITableViewCell *secondCell = [tableView dequeueReusableCellWithIdentifier:cell2];

                if (secondCell == nil) {

                    secondCell = [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cell2] autorelease];

                }

                secondCell.textLabel.text = @"SecondTableView";

                return secondCell;

            }     

                break;


            default:

            {

                       

                NSString *str = [NSString stringWithFormat:@"str%d", row];      

                UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:str];  

              if (cell == nil) {  

                        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:str] autorelease];  

                    }

                    

                            return cell;

                        }

                            break;

                    } 

}


- (IBAction)setSegmentedPressed:(id)sender {

    switch ([sender selectedSegmentIndex]) {

        case kFirstSegmentedIndex:

            firstTableView.hidden = NO;

            secondTableView.hidden = YES;

            [firstTableView reloadData];

            break;

        case kSecondSegmentedIndex:

            firstTableView.hidden = YES;

            secondTableView.hidden = NO;

            [secondTableView reloadData];

            break

        default:

            break;

    }

}


- (void)viewDidUnload

{

    [self setSegmented:nil];

    [self setFirstTableView:nil];

    [self setSecondTableView:nil];

    [super viewDidUnload];

    // Release any retained subviews of the main view.

    // e.g. self.myOutlet = nil;

}


- (void)viewWillAppear:(BOOL)animated

{

    [super viewWillAppear:animated];

    [self.view addSubview:self.firstTableView];

    [self.view addSubview:self.secondTableView];

}


- (void)viewDidAppear:(BOOL)animated

{

    [super viewDidAppear:animated];

}


- (void)viewWillDisappear:(BOOL)animated

{

[super viewWillDisappear:animated];

}


- (void)viewDidDisappear:(BOOL)animated

{

[super viewDidDisappear:animated];

}


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

{

    // Return YES for supported orientations

    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);

}


- (void)dealloc {

    [segmented release];

    [firstTableView release];

    [secondTableView release];

    [super dealloc];

}


@end

原文地址:http://blog.sina.com.cn/s/blog_690f60a401015fh0.html
0 0