ストーリーボードを使用して UITableViewController の一番上 (ナビゲーション バーのすぐ下) に UIScrollView があります。UIScrollView のデフォルト サイズは 320x50 です。ユーザーが scrollView を少なくとも 1 秒間保持すると、アニメーションで追加の詳細を表示するために、UIScrollView を 2 倍 (320x100) にする必要があります。そのすぐ下の UITableView は、可能であればそれと一緒にアニメーション化し、50 下に移動する必要があります。
UIScrollView が大きい設定のときに少なくとも 1 秒間保持すると、逆のアニメーションになり、UIScrollView は元のサイズに戻ります。
どうすればいいですか?よろしくお願いします!これが私がこれまでに持っているものです:
- (void)viewDidLoad {
[super viewDidLoad];
self.featureScrollExpanded = NO;
UILongPressGestureRecognizer* featureHold = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector (longHold:)];
[featureHold setDelaysTouchesBegan : YES];
featureHold.minimumPressDuration = 0.6;
featureHold.numberOfTouchesRequired = 1;
[self.featureScrollView addGestureRecognizer:featureHold];
[featureHold release];
}
- (void)longHold:(UIGestureRecognizer*)sender {
if (self.featureScrollExpanded==NO) {
self.featureScrollExpanded=YES;
//make it bigger
}
else {
self.featureScrollExpanded=NO;
//make it smaller
}
}