UITable View使用

9425 ワード

UITable View使用
- (void)viewDidLoad
{
    [super viewDidLoad];
    //     
    NSArray *array1_=@[@"   ",@"   ",@"   ",@"   ",@"   "];
    NSArray *array2_=@[@"   ",@"   "];
    NSArray *array3_=@[@"  "];
    self.myDic=@{@"   ":array1_, @"   ":array2_, @"   ":array3_};

    
    UITableView *myTableView_=[[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 460) style:UITableViewStylePlain];
    myTableView_.delegate=self;
    myTableView_.dataSource=self;
    //       lyttzx.com
    myTableView_.separatorColor = [UIColor blueColor];
    //  Header   ,
    myTableView_.sectionHeaderHeight=50;
    //  footer   ,
    myTableView_.sectionFooterHeight=100;
    //    
    myTableView_.rowHeight=100;
    //  cell      ,   UITableViewCellSeparatorStyleSingleLine
    [myTableView_ setSeparatorStyle:UITableViewCellSeparatorStyleSingleLine];
    //  cell     
    [myTableView_ setSeparatorColor:[UIColor redColor]];
    //  tableView
    myTableView_.editing=NO;

    [self.view addSubview:myTableView_];
    
    //    row or section
    [myTableView_ scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:2 inSection:2]
                     atScrollPosition:UITableViewScrollPositionBottom animated:NO];

}



//        (Section),   1
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return [[self.myDic allKeys] count];
}


//  section      (            sectionHeaderHeight        )
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
    return 20;
}

//  section      (            sectionFooterHeight        )
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{
    return 20;
}

//  section     -Header
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    return [[self.myDic allKeys] objectAtIndex:section];
}

//  section     -Footer
- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section{
    return nil;
}

//        section    -Header
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
    return nil;
}

//        section    -Footer
-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{
    UIImageView *imageView_=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 20)];
    imageView_.image=[UIImage imageNamed:@"1000.png"];
    return [imageView_ autorelease];
}


//           ,   1
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return [[self.myDic objectForKey:[[self.myDic allKeys]objectAtIndex:section]] count];
}

//      (          rowHeight        )
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return 100;
}


//  Cell
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";
    
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
                             SimpleTableIdentifier];
    
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                       reuseIdentifier: SimpleTableIdentifier] autorelease];
     //      
        [cell setAccessoryType:UITableViewCellAccessoryDetailDisclosureButton];
//        UITableViewCellAccessoryNone,                   //     
//        UITableViewCellAccessoryDisclosureIndicator,    //      
//        UITableViewCellAccessoryDetailDisclosureButton, //   button
//        UITableViewCellAccessoryCheckmark               //     
        
     //    cell  cell     
        cell.selectionStyle=UITableViewCellSelectionStyleBlue;     //       
//        cell.selectionStyle=UITableViewCellSelectionStyleNone; //         
//        cell.selectionStyle=UITableViewCellSelectionStyleGray;  //       
//        
//        //     cell      
//        UIView *selectedView = [[UIView alloc] initWithFrame:cell.contentView.frame];
//        selectedView.backgroundColor = [UIColor orangeColor];
//        cell.selectedBackgroundView = selectedView;
//        [selectedView release];

        
//        cell.selectionStyle=UITableViewCellAccessoryNone; //      

    }
    
    //              
    cell.contentView.backgroundColor = [UIColor clearColor];
    cell.imageView.image=[UIImage imageNamed:@"1001.jpg"];//  cell    
    cell.imageView.highlightedImage=[UIImage imageNamed:@"1002.jpg"];//  cell    
    cell.textLabel.text=[[self.myDic objectForKey:[[self.myDic allKeys]objectAtIndex:indexPath.section]]objectAtIndex:indexPath.row];
    return cell;
}


//   
-(NSInteger)tableView:(UITableView *)tableView indentationLevelForRowAtIndexPath:(NSIndexPath *)indexPath{
    NSUInteger row = [indexPath row];
    return row;
}

//  Cell    
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    [tableView deselectRowAtIndexPath:indexPath animated:YES];//            
    
    //       cell
    UITableViewCell *cell=[tableView cellForRowAtIndexPath:indexPath];
    NSLog(@"cell=%@",cell);
}

//         ,    
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"       
cell=%@
indexpath=%@",cell,indexPath); } // , ( ) -(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSUInteger row = [indexPath row]; if (row == 0) return nil; return indexPath; } // , - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { } //cell UITableViewCellAccessoryDetailDisclosureButton , -(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath{ NSLog(@" button
indexpath=%@",indexPath); } // - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{ return [self.myDic allKeys]; } // cell del - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { return YES; } // ,( ) -(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { if (indexPath.row==0) { return UITableViewCellEditingStyleNone; } else{ return UITableViewCellEditingStyleDelete; } return UITableViewCellEditingStyleDelete; } // delete - (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath{ return @" "; } // row -(void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath*)destinationIndexPath { NSLog(@"sourceIndexPath=%@",sourceIndexPath); NSLog(@"sourceIndexPath=%@",destinationIndexPath); } // -(void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath { NSLog(@"willBeginEditingRowAtIndexPath"); } // , -(NSIndexPath *)tableView:(UITableView *)tableView willDeselectRowAtIndexPath:(NSIndexPath *)indexPath { NSLog(@"
indexpath=%@",indexPath); return indexPath; } // -(BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { return NO; } // row -(NSIndexPath *)tableView:(UITableView *)tableView targetIndexPathForMoveFromRowAtIndexPath:(NSIndexPath *)sourceIndexPath toProposedIndexPath:(NSIndexPath *)proposedDestinationIndexPath { NSLog(@"targetIndexPathForMoveFromRowAtIndexPath"); // section if(sourceIndexPath.section != proposedDestinationIndexPath.section){ return sourceIndexPath; } return proposedDestinationIndexPath; }