2015-01-28 4 views
0

Я довольно новичок в разработке Xcode и iOS, но до сих пор наслаждаюсь проблемой.Перемещение UIImageView с помощью UIButton

У меня возникла проблема, когда я пытаюсь переместить UIImageView Я создал программно поверх MapView mapView.

Я хотел был бы переместить этот UIImageView с помощью UIButton мерой пикселей, при этом UIButton находится над mapView.

Это код, который я до сих пор в моем ViewController.m:

[self.view addSubview:mapView]; 

    UIImageView* ship; 

    ship=[[UIImageView alloc] initWithFrame:CGRectMake(150, 200, 40, 40)]; 
    UIImage * image; 
    image=[UIImage imageNamed:@"spaceShip"]; 
    [ship setImage:image]; 
    ship.alpha = 0.75; 
    [self.view addSubview:ship]; 

    UIButton *upButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    upButton.frame = CGRectMake(150, 250, 40, 40); 
    upButton.userInteractionEnabled = YES; 

    [upButton setTitle:@"UP" forState:UIControlStateNormal]; 

    [upButton addTarget:ship action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside]; 
    [self.view addSubview:upButton]; 

} 

- (IBAction)moveUp { 
    ship.center = CGPointMake(ship.center.x, ship.center.y -10); 
} 

Может кто-нибудь показать мне, как получить этот upButton признать и пошевелить UIImageView?

ответ

0

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

Другая проблема заключается в том, что при добавлении действия к вашей кнопке вы вызываете его buttonPressed :, но метод, который вы внедрили, - moveUp. Таким образом, если вы создадите свойство, называемое судном, то ваш метод действия должен быть указан,

+0

@MorganJones, если этот ответ исправил вашу проблему, вы должны принять его. – rdelmar

+0

Как его принять? –

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