Книга: iOS. Приемы программирования

Решение

Решение

Воспользуйтесь классом UIPanGestureRecognizer:

— (void)viewDidLoad {
[super viewDidLoad];
/* Сначала создаем метку. */
CGRect labelFrame = CGRectMake(0.0f, /* X */
0.0f, /* Y */
150.0f, /* Ширина */
100.0f); /* Высота */
self.helloWorldLabel = [[UILabel alloc] initWithFrame: labelFrame];
self.helloWorldLabel.text = @"Hello World";
self.helloWorldLabel.backgroundColor = [UIColor blackColor];
self.helloWorldLabel.textColor = [UIColor whiteColor];
self.helloWorldLabel.textAlignment = UITextAlignmentCenter;
/* Убеждаемся, что мы активизировали пользовательские взаимодействия;
в противном случае эта метка не будет фиксировать события нажатия. */
self.helloWorldLabel.userInteractionEnabled = YES;
/* А теперь убеждаемся, что метка отображается в виде. */
[self.view addSubview: self.helloWorldLabel];
/* Создаем распознаватель жестов панорамирования. */
self.panGestureRecognizer = [[UIPanGestureRecognizer alloc]
initWithTarget: self
action:@selector(handlePanGestures:)];
/* Для активизации распознавателя жестов панорамирования требуется
один палец. */
self.panGestureRecognizer.minimumNumberOfTouches = 1;
self.panGestureRecognizer.maximumNumberOfTouches = 1;
/* Добавляем распознаватель к виду. */
[self.helloWorldLabel addGestureRecognizer: self.panGestureRecognizer];
}

Распознаватель жестов панорамирования будет вызывать метод handlePanGestures: в качестве целевого. Этот метод описан в подразделе «Решение» данного раздела.

Оглавление книги

Оглавление статьи/книги

Генерация: 0.075. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз