2013-05-07 2 views
-1

У меня есть изображение в качестве фона для приложения. У меня есть кнопка на фоне фона. Я хочу нажать эту кнопку и увеличить анимацию фонового изображения. Каков наилучший способ решить эту проблему? Должен ли я использовать scrollview?iOS: масштабирование изображения с помощью кнопки

ответ

3

Я думаю, что использование преобразования в блоке анимации - лучший способ. Вы можете сделать что-то вроде этого:

[UIView animateWithDuration:0.3 animations:^ 
{ 
    [yourImageView setTransform:CGAffineTransformMakeScale(1.5, 1.5)]; 
}]; 

и поместить его обратно в исходное положение, вам просто нужно сделать, это:

[UIView animateWithDuration:0.3 animations:^ 
{ 
    [yourImageView setTransform:CGAffineTransformIdentity]; 
}]; 
2

Что-то вроде этого?

UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
myButton.frame = CGRectMake(80, 50, 150, 40); 
[myButton setTitle:@"Your button!" forState:UIControlStateNormal]; 
[myButton setBackgroundImage:[UIImage imageNamed:@"xyz.png"]];  
[self.view addSubview:myButton]; 

-(IBAction)buttonClicked:(UIButton *)sender 
{ 
    self.frame = CGRectMake(0.0f, 0.0f, 200.0f, 150.0f); 
    [UIView beginAnimations:@"Zoom" context:NULL]; 
    [UIView setAnimationDuration:0.5]; 
    self.frame = CGRectMake(0.0f, 0.0f, 1024.0f, 768.0f); 
    [UIView commitAnimations]; 
} 
+1

Не запускайте анимации в методе действия, он будет сталкиваются с анимацией кнопок. Отправьте его в основную очередь в блоке, и он будет выглядеть намного приятнее. хороший ответ, хотя! –

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