上篇博客已經介紹了如何使用UITableView橫屏滑動,本篇博客加上了點擊放大的操作,是放在UITableViewCell的cell上的,因為可視化控件太多了,故此隱藏掉,使用方法也很簡單.userInteractionEnabled = false就可以了。
創(chuàng)新互聯(lián)公司服務項目包括秭歸網站建設、
秭歸網站制作、秭歸網頁制作以及秭歸網絡營銷策劃等。多年來,我們專注于互聯(lián)網行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網行業(yè)的解決方案,
秭歸網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到秭歸省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
1.點擊UIButton中的圖片放大,首先要寫UIButton的方法
2.改變控件大小的方法有很多,一個改變之后的大小,一個之前的大小
3.默認是第一個選中,跟單選很像,那就定義一個標記,然后每次點擊替換標記,然后做對比是不是同一個標記
4.然后就是刷新UITableView
#import "ViewController.h"
#import "FFTableViewCell.h"
@interface ViewController ()
@property(strong,nonatomic)UITableView *myTableView;
@property(strong,nonatomic)NSIndexPath *selectedIndexPath;
@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];
self.selectedIndexPath = [NSIndexPath indexPathForRow:0 inSection:0];
// 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];
if([self.selectedIndexPath isEqual:indexPath]){
[cell zoomPtoto:YES];
}else{
[cell zoomPtoto:NO];
}
return cell;
}
#pragma mark 選中的方法
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
self.selectedIndexPath = indexPath;
[self.myTableView reloadData];
}
- (void)dealloc{
_myTableView = nil;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
#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 = 20.0f;
_monthBtn.clipsToBounds = YES;
[_monthBtn setTitle:@"在干嘛" forState:UIControlStateNormal];
_monthBtn.titleLabel.font = [UIFont systemFontOfSize:11.0f];
_monthBtn.userInteractionEnabled = false;
}
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)zoomPtoto:(BOOL)isBool{
_isBool = isBool;
if(isBool){
_monthBtn.layer.cornerRadius = 30.0f;
_monthBtn.frame = CGRectMake((CGRectGetWidth(self.contentView.frame)-60)/2, (CGRectGetHeight(self.contentView.frame)-60)/2, 60,60);
}else{
_monthBtn.layer.cornerRadius = 20.0f;
_monthBtn.frame = CGRectMake((CGRectGetWidth(self.contentView.frame)-40)/2, (CGRectGetHeight(self.contentView.frame)-40)/2, 40,40);
}
}
- (void)layoutSubviews{
[super layoutSubviews];
if(_isBool){
_monthBtn.layer.cornerRadius = 30.0f;
_monthBtn.frame = CGRectMake((CGRectGetWidth(self.contentView.frame)-60)/2, (CGRectGetHeight(self.contentView.frame)-60)/2, 60,60);
}else{
_monthBtn.layer.cornerRadius = 20.0f;
_monthBtn.frame = CGRectMake((CGRectGetWidth(self.contentView.frame)-40)/2, (CGRectGetHeight(self.contentView.frame)-40)/2, 40,40);
}
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
- (void)dealloc{
_monthBtn = nil;
}
@end另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
標題名稱:iOSUITableView橫向滑動點擊UIButton放大-創(chuàng)新互聯(lián)
網頁鏈接:http://weahome.cn/article/dcecdi.html