From 1278c5417c6994fde48819ee62c6f133d5b22f0d Mon Sep 17 00:00:00 2001 From: Ran Tavory Date: Wed, 29 Feb 2012 11:10:24 +0200 Subject: [PATCH] Make the pull-to-refresh arrow closer to the center of the screen. --- Classes/PullRefreshTableViewController.h | 1 + Classes/PullRefreshTableViewController.m | 15 ++++++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Classes/PullRefreshTableViewController.h b/Classes/PullRefreshTableViewController.h index 92429f3..bcb97a6 100644 --- a/Classes/PullRefreshTableViewController.h +++ b/Classes/PullRefreshTableViewController.h @@ -49,6 +49,7 @@ @property (nonatomic, copy) NSString *textPull; @property (nonatomic, copy) NSString *textRelease; @property (nonatomic, copy) NSString *textLoading; +@property (nonatomic) CGFloat arrowLeftPadding; - (void)setupStrings; - (void)addPullToRefreshHeader; diff --git a/Classes/PullRefreshTableViewController.m b/Classes/PullRefreshTableViewController.m index 6bc4ebe..ddd5a86 100644 --- a/Classes/PullRefreshTableViewController.m +++ b/Classes/PullRefreshTableViewController.m @@ -35,11 +35,16 @@ @implementation PullRefreshTableViewController -@synthesize textPull, textRelease, textLoading, refreshHeaderView, refreshLabel, refreshArrow, refreshSpinner; +@synthesize textPull, textRelease, textLoading, refreshHeaderView, refreshLabel, refreshArrow, refreshSpinner, arrowLeftPadding; + +- (void) defaults { + arrowLeftPadding = 0; +} - (id)initWithStyle:(UITableViewStyle)style { self = [super initWithStyle:style]; if (self != nil) { + [self defaults]; [self setupStrings]; } return self; @@ -48,6 +53,7 @@ - (id)initWithStyle:(UITableViewStyle)style { - (id)initWithCoder:(NSCoder *)aDecoder { self = [super initWithCoder:aDecoder]; if (self != nil) { + [self defaults]; [self setupStrings]; } return self; @@ -56,6 +62,7 @@ - (id)initWithCoder:(NSCoder *)aDecoder { - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self != nil) { + [self defaults]; [self setupStrings]; } return self; @@ -82,12 +89,14 @@ - (void)addPullToRefreshHeader { refreshLabel.textAlignment = UITextAlignmentCenter; refreshArrow = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"arrow.png"]]; - refreshArrow.frame = CGRectMake(floorf((REFRESH_HEADER_HEIGHT - 27) / 2), + refreshArrow.frame = CGRectMake(floorf((REFRESH_HEADER_HEIGHT - 27) / 2) + arrowLeftPadding, (floorf(REFRESH_HEADER_HEIGHT - 44) / 2), 27, 44); refreshSpinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; - refreshSpinner.frame = CGRectMake(floorf(floorf(REFRESH_HEADER_HEIGHT - 20) / 2), floorf((REFRESH_HEADER_HEIGHT - 20) / 2), 20, 20); + refreshSpinner.frame = CGRectMake(floorf(floorf(REFRESH_HEADER_HEIGHT - 20) / 2) + arrowLeftPadding, + floorf((REFRESH_HEADER_HEIGHT - 20) / 2), + 20, 20); refreshSpinner.hidesWhenStopped = YES; [refreshHeaderView addSubview:refreshLabel];