Как переместить UIButton и UIImageView из одного места в другое в iphone?

#iphone

#iPhone

Вопрос:

Как автоматически перемещать UIButton и UImageView из одного места в другое при нажатии кнопки. Я также создал UIButton и UIImageView программно в scrollview. Но я хочу, чтобы при нажатии на кнопку другой UIImage , а также кнопка перемещались в указанное место.

Вот мой код

 if (i==0)
{
    bgImage = [[UIImageView alloc] initWithFrame:CGRectMake(20,30 x,100,100)];
    bgImage.image = [UIImage imageNamed:@"iphone.png"];
    [self.view addSubview:bgImage];
    [scrollview addSubview:bgImage];

    myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton.frame = CGRectMake(120, 65 x, 70, 30); // position in the parent view and set the size of the button
    [myButton setTitle:@"Delete" forState:UIControlStateNormal];
    [myButton addTarget:self action:@selector(buttonClicked) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:myButton];
    [scrollview addSubview:myButton];
    x=x 100;
}
if (i==1) 
{
    bgImage1 = [[UIImageView alloc] initWithFrame:CGRectMake(20,30 x,100,100)];
    bgImage1.image = [UIImage imageNamed:@"iphone.png"];
    [self.view addSubview:bgImage1];
    [scrollview addSubview:bgImage1];

    UIButton *myButton1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton1.frame = CGRectMake(120, 65 x, 70, 30); // position in the parent view and set the size of the button
    [myButton1 setTitle:@"Delete" forState:UIControlStateNormal];
    [myButton1 addTarget:self action:@selector(buttonClicked1) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:myButton1];
    [scrollview addSubview:myButton1];
    x=x 100;
}

- (void)buttonClicked1
{
    [bgImage removeFromSuperview];
    [bgImage release];
    bgImage=nil;
    myButton.enabled=NO;
    myButton.hidden=YES;
}
  

Когда я нажимаю buttonclicked1 кнопку bgImage , и myButton удаляется ее место, и я хочу bgImage1 , и myButton1 перемещается в это место без каких-либо изменений.

Как это сделать. Кто-нибудь, пожалуйста, дайте мне код. Я не могу его переместить. Как это сделать. Пожалуйста, помогите мне.

Заранее спасибо.

Ответ №1:

Измените рамку при нажатии кнопки.Сделайте это в — (void) метод buttonClicked1

 bgImage1.frame=CGRectMake(20,30 x,100,100);
myButton1.frame = CGRectMake(120, 65 x, 70, 30);
  

или

 - (void)buttonClicked1
{
bgImage1.frame=bgImage.frame;
    myButton1.frame = myButton.frame;
[bgImage removeFromSuperview];
[bgImage release];
bgImage=nil;
    myButton.enabled=NO;
myButton.hidden=YES;
}