Довольно просто на самом деле.Просто приклейте UIScrollViewDelegate
к просмотру прокрутки и сделайте что-то вроде этого ..
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
for (int i = 0; i < [scrollView.subviews count]; i++) {
UIView *v = [scrollView.subviews objectAtIndex:i];
float position = v.center.x - scrollView.contentOffset.x;
float offset = 2.0 - (abs(scrollView.center.x - position) * 1.0) / scrollView.center.x;
v.transform = CGAffineTransformIdentity;
v.transform = CGAffineTransformScale(v.transform, offset, offset);
}
}
Но, если вы не впечатлены аффинным преобразованием, вы все равно можете масштабировать прямоугольник, используя фактор offset
и установите UILabel на adjustsFontSizeToFitWidth
... и все готово!
Просто убедитесь, что места достаточно!В противном случае он может очень легко выйти из-под контроля.
Допущения:
- Нет никаких других представлений в представлении прокрутки, кроме этих меток.
- Требуется работать только горизонтально.