在开发中横向滑动我们通常会想到用UICollectionView,确实这个好用,但有时候需求不太明确而且用UICollectionView的头部需要自定义没有UITableView简单,粽子看需求,根据需求决定,但是我们得会这种技能。
创新互联公司是一家专注于
网站制作、成都做网站与策划设计,花山网站建设哪家好?
创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:花山等地区。花山做网站价格咨询:028-86922220@interface ViewController ()
@property(strong,nonatomic)UITableView *myTableView;
@end
@implementation ViewController
- (UITableView *)myTableView{
if(!_myTableView){
CGRect tableViewRect = CGRectMake(0, 0,100, CGRectGetWidth(self.view.frame));
_myTableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
_myTableView.dataSource = self;
_myTableView.delegate = self;
_myTableView.frame = tableViewRect;
_myTableView.separatorStyle = NO;
_myTableView.backgroundColor = [UIColor grayColor];
_myTableView.transform = CGAffineTransformMakeRotation(-M_PI / 2);
_myTableView.showsVerticalScrollIndicator = NO;
_myTableView.center = CGPointMake(self.view.frame.size.width / 2, 50);
}
return _myTableView;
}
- (void)viewDidLoad {
[super viewDidLoad];
//AppDelegate 进行全局设置
if (@available(iOS 11.0, *)){
[[UIScrollView appearance] setContentInsetAdjustmentBehavior:UIScrollViewContentInsetAdjustmentNever];
}
self.view.backgroundColor = [UIColor purpleColor];
[self.view addSubview:self.myTableView];
// Do any additional setup after loading the view, typically from a nib.
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 100;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 50;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
FFTableViewCell *cell = [FFTableViewCell cellWithTableView:tableView];
return cell;
}
#pragma mark 选中的方法
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
#import "FFTableViewCell.h"
@interface FFTableViewCell()
@property(strong,nonatomic)UIButton *monthBtn;
@end
@implementation FFTableViewCell
static NSString *cellID = @"FFTableViewCell";
- (UIButton *)monthBtn{
if(!_monthBtn){
_monthBtn = [UIButton buttonWithType:UIButtonTypeCustom];
_monthBtn.backgroundColor = [UIColor redColor];
_monthBtn.layer.cornerRadius = 30.0f;
_monthBtn.clipsToBounds = YES;
[_monthBtn setTitle:@"在干嘛" forState:UIControlStateNormal];
}
return _monthBtn;
}
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
+ (instancetype)cellWithTableView:(UITableView *)tableView
{
FFTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
if (cell == nil) {
cell = [[FFTableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID];
}
return cell;
}
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self){
self.contentView.transform = CGAffineTransformMakeRotation(M_PI / 2);
[self.contentView addSubview:self.monthBtn];
}
return self;
}
- (void)layoutSubviews{
[super layoutSubviews];
_monthBtn.frame = CGRectMake((CGRectGetWidth(self.contentView.frame)-60)/2, (CGRectGetHeight(self.contentView.frame)-60)/2, 60,60);
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
- (void)dealloc{
_monthBtn = nil;
}
@end解决问题的方法不止一种,要多想想其他的解决办法,这样才能更好的掌握每个知识点,说不定会更好,说不定就是面试题等待。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章标题:iOSUITableView的横向滑动-创新互联
标题链接:http://6mz.cn/article/jjjgc.html