I made a sample animation for your requirement.
#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *arrowImageView;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *arrowLeadingSpaceConstraint;
- (IBAction)goButtonTapped:(id)sender;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
float degrees = 270; //the value in degrees
self.arrowImageView.transform = CGAffineTransformMakeRotation(degrees * M_PI/180);
}
- (IBAction)goButtonTapped:(id)sender {
// self.arrowLeadingSpaceConstraint.constant = 310;
self.arrowImageView.frame = CGRectMake(310, 574, 20, 30);
float degrees = 270; //the value in degrees
self.arrowImageView.transform = CGAffineTransformMakeRotation(degrees * M_PI/180);
[UIView animateWithDuration:0.2
delay:0.0
options: UIViewAnimationOptionCurveEaseOut
animations:^{
self.arrowImageView.frame = CGRectMake(100, 574, 20, 30);
self.arrowImageView.transform = CGAffineTransformMakeRotation(0 * M_PI/180);
}
completion:^(BOOL finished){
[UIView animateWithDuration:0.2
delay:0.0
options: UIViewAnimationOptionCurveEaseOut
animations:^{
self.arrowImageView.frame = CGRectMake(50, 150, 20, 30);
}
completion:^(BOOL finished){
[UIView animateWithDuration:0.1
delay:0.0
options: UIViewAnimationOptionCurveEaseOut
animations:^{
self.arrowImageView.frame = CGRectMake(80, 100, 20, 30);
}
completion:nil];
}];
}];
}
@end


Please use the following link of my GitHub link, to test sample:
https://github.com/k-sathireddy/ArrowAnimation
Please make the animation smooth.