代码改变世界

UITableView

2015-08-19 20:33  dengchaojie_learner  阅读(138)  评论(0编辑  收藏  举报

// 给每组添加索引

- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView

{

    return [_citiesData valueForKeyPath:@"name"];

}

  • 注意,1个控制器加到另一个控制器上面,用addChildViewController

// tableView的代理方法

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

{

    DCJCitySection *s = _citySections[indexPath.section];

    DCJCity *city = s.cities[indexPath.row];

    

    [DCJMetaDataTool sharedDCJMetaDataTool].currentCity = city;

    MyLog(@"CityListController监听到到城市改变了。。。。。。");

}

 

如果是TableView控制器,它的self.view和self.tabelView是一样的;而collectionView是self.view的子视图。

代理@property (nonatomic,weak) id<DCJSubtitleViewDelegate> delegate;// 不加*号

代理变量 @property (nonatomic,weak) id<DockDelegate> delegate;

代理防范,注意是Dock。- (void)dock:(Dock *)tabItem itemFrom:(int)from to:(int)to;

 

cell创建步骤:1.获取模型数据;2.创建单元格;3.把模型数据赋值给单元格对象;4.返回单元格

自定义cell:重写initWithStyle方法,里面创建子控件

  

想调整cell内部contentView和accessoryView的位置和宽高,在layoutSubViews(当cell的宽高改变时就会调用这个方法,此时自己在方法内重新调整宽高,覆盖此方法的默认调整宽高的操作)方法中调整

…对于collectionViewCell和TableViewCell,当一个cell重新进入屏幕视野范围内时会调用;还有当刷新数据(reloadData )的时候会调用。

quartzcore.framework是基于C的,所以下面要加CGColor

self.contentView.layer.shadowColor = [UIColor darkGrayColor].CGColor;