init

博客园 首页 联系 订阅 管理

#import "XXXViewController.h"

 

@interfaceXXXViewController ()

 

@end

 

@implementation XXXViewController

 

- (void)viewDidLoad

{

    self.pTableView=[[UITableViewalloc]initWithFrame:self.view.framestyle:UITableViewStyleGrouped];

    self.pTableView.delegate=self;

    self.pTableView.dataSource=self;

    self.selectIndex = nil;

    [self.viewaddSubview:self.pTableView];

    pTablePArr=[[NSMutableArrayalloc]init];

    for (int i=1; i<9; i++)

    {

        [pTablePArraddObject:[NSNumbernumberWithInt:i]];

    }

}

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

 

    return 1;

}

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

{

    return [pTablePArrcount];

 

}

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

{

 

        static NSString *identifier = @"cell";

        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];

        if (cell == nil){

            cell = [[[UITableViewCellalloc] initWithStyle:UITableViewCellStyleSubtitlereuseIdentifier:identifier] autorelease];

        }

        

      cell.textLabel.text= [NSStringstringWithFormat:@"%@",[pTablePArrobjectAtIndex:[indexPath row]]];

        cell.contentView.backgroundColor=[UIColorredColor];

    if ([self.selectIndex row]+1==[indexPath row]&&self.selectIndex!=nil )

    {

       p=[[UIViewalloc]initWithFrame:CGRectMake(0, 0, 200, 150)];

        p.backgroundColor=[UIColoryellowColor];

        UIButton *pButton=[UIButtonbuttonWithType:UIButtonTypeRoundedRect];

        [pButton setFrame:CGRectMake(0, 0, 20, 30)];

        [pButton addTarget:selfaction:@selector(asd:) forControlEvents:UIControlEventTouchDown];

        [p addSubview:pButton];

        

        [cell.contentViewaddSubview:p];

       

        

    }

        return cell;

    

}

-(IBAction)asd:(id)sender

{

 

    NSLog(@"yes");

 

}

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

{

    if (!self.selectIndex){

        self.selectIndex = indexPath;

        [pTablePArr insertObject:@" " atIndex:[indexPath row]+1];

    

        [self.pTableView reloadData];

    }

    else{

        

        //两次点击不同的cell

        if (indexPath.row == self.selectIndex.row){

            //收起上次点击展开的cell;

            [premoveFromSuperview];

            [pTablePArr removeObject:@" "];

            self.selectIndex = nil;

              [self.pTableView reloadData];

            

        }

        if (indexPath.row==self.selectIndex.row+1)

        {

            

        }

        else{

            //若点击相同的cell,收起cell

           [pTablePArr removeObject:@" "];

            self.selectIndex = nil;

             [premoveFromSuperview];

            [self.pTableView reloadData];

        }

    }

    

    [self.pTableViewscrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionNoneanimated:YES];

 

}

-(BOOL)tableView:(UITableView *)tableView shouldHighlightRowAtIndexPath:(NSIndexPath *)indexPath

{

 

    if (self.selectIndex.row+1==indexPath.row&&self.selectIndex!=nil)

    {

        return NO;

    }

    else

    {

        return YES;

    }

}

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

{

    if (indexPath.row == self.selectIndex.row+1&& self.selectIndex != nil){

        return 180;

    }

    else

        return 55;

 

 

}

-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath

{

    returnYES;

}

- (void)didReceiveMemoryWarning

{

    [superdidReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

@end

 

posted on 2014-04-20 22:02  init  阅读(352)  评论(0)    收藏  举报