您的位置:首页 > 其它

TableViewCell 里面嵌的TableViewCell 如何点击里面的TableViewCell进行页面跳转?

2016-12-29 14:35 459 查看
下面是里面TableView的代码
#import "ClassViewCell.h"

#import "MyCollectionCell.h"

#import "StringManager.h"

#import "HomeViewController.h"

#import "FreeWorkList.h"

@implementation ClassViewCell 

#define SCREEN_WIDTH   [[UIScreen mainScreen] bounds].size.width

@synthesize names;

@synthesize images;

- (void)awakeFromNib {

    // Initialization code

    [self setUpCollection];

   

}

    

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {

    [super setSelected:selected animated:animated];

    // Configure the view for the selected state

}

-(void)setUpCollection{

    UICollectionViewFlowLayout *flowLayout=[[UICollectionViewFlowLayout alloc] init];

    [flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];

    self.collectionView=[[UICollectionView alloc] initWithFrame:CGRectMake(0, 64, SCREEN_WIDTH, 200) collectionViewLayout:flowLayout];

    self.collectionView.dataSource=self;

    self.collectionView.delegate=self;

    [self.collectionView setBackgroundColor:[UIColor clearColor]];

  

    

    

    names=@[@"兼职",@"培训",@"活动",@"实习",@"全职",@"假期工",@"在线兼职",@"公告"];

    images=@[@"jzicon.png",@"pxicon.png",@"hdicon.png",@"sxicon.png",@"qzicon.png",@"jqgicon.png",@"zxjzicon.png",@"ggicon.png"];

}

//定义展示的UICollectionViewCell的个数

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section

{

    return 8;

}

//定义展示的Section的个数

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView

{

    return 1;

}

//每个UICollectionView展示的内容

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath

{

    static NSString * CellIdentifier = @"MyCollectionCell";

    UINib *cellNib = [UINib nibWithNibName:@"MyCollectionCell" bundle:nil];

    [self.collectionView registerNib:cellNib forCellWithReuseIdentifier:@"MyCollectionCell"];

    

    

    UICollectionViewCell *cell  = [self.collectionView dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath];

    UILabel *label = (UILabel *)[cell viewWithTag:2];

    UIImageView *imageVIew=(UIImageView *)[cell viewWithTag:1];

    

            label.text=[names objectAtIndex:indexPath.row];

            imageVIew.image=[UIImage imageNamed:[images objectAtIndex:indexPath.row]];

    return cell;

}

#pragma mark --UICollectionViewDelegateFlowLayout

//定义每个Item 的大小

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath

{

    return CGSizeMake(70, 70);

}

//定义每个UICollectionView 的 margin

-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section

{

    if([[StringManager deviceString] isEqualToString:@"iPhone6"])

    {

        return UIEdgeInsetsMake(0, 30, 5, 20);

    }

    else if ([[StringManager deviceString] isEqualToString:@"iPhone6Plus"])

    {

        return UIEdgeInsetsMake(0, 30, 5, 20);

    }

    else

    {

        return UIEdgeInsetsMake(0, 10, 0, 0);

    }

    

}

#pragma mark --UICollectionViewDelegate

//UICollectionView被选中时调用的方法

-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath

{

    UICollectionViewCell * cell = (UICollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];

    //临时改变个颜色,看好,只是临时改变的。如果要永久改变,可以先改数据源,然后在cellForItemAtIndexPath中控制。(和UITableView差不多吧!O(∩_∩)O~)

    cell.backgroundColor = [UIColor clearColor];

    NSLog(@"走到这里了");

}

//返回这个UICollectionView是否可以被选择

-(BOOL)collectionView:(UICollectionView *)collectionView shouldSelectItemAtIndexPath:(NSIndexPath *)indexPath

{

    return YES;

}

@end


下面是主TableViewCell的代码
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

  

    

    if(indexPath.row==0){

        //NSLog(@"cellForRowAtIndexPath:%@",tmpStr2);

        UINib *cellNib = [UINib nibWithNibName:@"ClassViewCell" bundle:nil];

        [self.tbView registerNib:cellNib forCellReuseIdentifier:@"ClassViewCell"];

        TableViewCell *scell = [self.tbView dequeueReusableCellWithIdentifier:@"ClassViewCell"];

        scell.contentView.backgroundColor = [UIColor clearColor];

        UIView *backgroundView = [[UIView alloc] initWithFrame:scell.frame];

        backgroundView.backgroundColor = [UIColor clearColor];

        scell.selectedBackgroundView = backgroundView;

        return scell;

    }else if(indexPath.row==1){

        UINib *cellNib = [UINib nibWithNibName:@"InfoTableViewCell" bundle:nil];

        [self.tbView registerNib:cellNib forCellReuseIdentifier:@"InfoTableViewCell"];

        TableViewCell *scell = [self.tbView dequeueReusableCellWithIdentifier:@"InfoTableViewCell"];

        UIView *backgroundView = [[UIView alloc] initWithFrame:scell.frame];

        backgroundView.backgroundColor = [UIColor clearColor];

        scell.selectedBackgroundView = backgroundView;

        scell.backgroundColor=[UIColor clearColor];

        return scell;

    }else{

        

        static NSString *CellTableIndentifer=@"TableViewcell";

        

        

        UINib *cellNib = [UINib nibWithNibName:@"TableViewCell" bundle:nil];

        [self.tbView registerNib:cellNib forCellReuseIdentifier:@"TableViewCell"];

        TableViewCell *scell = [self.tbView dequeueReusableCellWithIdentifier:@"TableViewCell"];

        

        UIView *backgroundView = [[UIView alloc] initWithFrame:scell.frame];

        backgroundView.backgroundColor = SELECTED_BACKGROUND;

        scell.selectedBackgroundView = backgroundView;

        if(fwids.count>=8)

        {

        

        scell.title=[fwnames objectAtIndex:indexPath.row-2];

        scell.content=[fwcons objectAtIndex:indexPath.row-2];

        scell.content2=[fwcon2s objectAtIndex:indexPath.row-2];

        scell.money=[fwmoneys objectAtIndex:indexPath.row-2];

        scell.city=[fwcitys objectAtIndex:indexPath.row-2];

        scell.iconsrc=[UIImage imageNamed:[images objectAtIndex:indexPath.row-2]];

        }

     return scell;

    }

    

    

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐