2016-08-05 4 views
-1

Я хочу изменить альфа-изображение с помощью жестов, таких как вверх и вниз, или вправо и влево. Я не хочу использовать слайдер для этого.iOS: изменение альфа-изображения с помощью жестов

Можно ли это сделать, если да, то скажите, пожалуйста, как или я должен использовать слайдер для этого?

спасибо.

ответ

0

Вы можете реализовать метод на контроллере вида или просмотра

- (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event 
{ 
    UITouch *touch = [touches anyObject]; 
    CGPoint location = [touch locationInView:self]; 

    NSLog(@"location: %@",NSStringFromCGPoint(location)); 

    // Example: 
    // alpha depends on location.x related to view bounds width 
    CGFloat alpha = (self.bounds.size.width - location.x)/self.bounds.size.width; 
    NSLog(@"alpha: %@",@(alpha)); 
} 

где вы можете проверить location.x или location.y.

0

Попробуйте сделать, как следующее:

Сначала прикрепите кран GestureRecognizer для просмотра:

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(yourTapMethod:)]; 
tap.numberOfTapsRequired = 1; 
tap.numberOfTouchesRequired = 1; 
[imageView addGestureRecognizer:tap]; 

Затем, в жесте обработчиком распознавателя делать то, что вы хотите:

-(void)yourTapMethod{ 

[UIView animateWithDuration:0.5 animations:^(void){ 

    imageView.alpha = //add any value (like 0.2f); 
    } 
+0

Я знаю, как применять жесты к представлениям, но я хочу изменить альфа изображения, как мы меняем с помощью слайдера. в моем случае я не хочу использовать слайдер для этого –

+0

см. обновленный ответ @Bhagyashreemahajan –

+0

Вы видели приложение Prisma? Я хочу изменить альфа, как на жесте просмотра изображения. –

Смежные вопросы