父视图旋转,tabelView也会跟着旋转.
扩展, 让tabelView旋转 90度, 再让cell旋转 -90度. 可以达到类似 UICollectionView 的效果
- (void)viewDidLoad {
[super viewDidLoad];
// 父视图
self.view.backgroundColor = [UIColor purpleColor];
// 子视图
UITableView *subV = [[UITableView alloc]init];
subV.frame = CGRectMake(100, 100, 270, 300);
subV.backgroundColor = [UIColor grayColor];
[self.view addSubview:subV];
self.subV = subV;
subV.delegate =self;
subV.dataSource = self;
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
//父视图旋转
self.view.transform = CGAffineTransformMakeRotation(M_PI_2);
// 点击后 让TableView 旋转-90度, 可以达到不随父控件旋转的效果
// self.subV.transform = CGAffineTransformMakeRotation(-M_PI_2);
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 10;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
cell.textLabel.text = @"123";
//cell.textLabel.tintColor = [UIColor redColor];
// 预先设置cell旋转 -90度
//cell.contentView.transform = CGAffineTransformMakeRotation(-M_PI_2);
UIView *tab = [[UIView alloc]init];
tab.frame = CGRectMake(10, 10, 50, 50);
tab.backgroundColor = [UIColor redColor];
[cell addSubview:tab];
return cell;
}
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 200;
}