2016-05-16 11 views
-2

ビューが画面の外にあるが、私は左から右にビューを作成する方法を知っているが、逆に、私はそれが右側から来た場合、元のビューの座標を何かわからないiOsの右側から左側にビューを表示するにはどうすればよいですか?

rightImage = [[UIImageView alloc]init]; 
rightImage.size = CGSizeMake(kScreenWidth*5/9, kScreenHeight*5/12); 
CGPoint rightImageCenter = rightImage.center; 
rightImageCenter.x += kScreenWidth + 100; 
rightImageCenter.y = kScreenHeight * 0.6; 
rightImage.center = rightImageCenter; 


[UIView animateWithDuration:0.3 animations:^{ 
     rightCenter.x -= 200; 
     rightCenter.y += kScreenHeight*0.6; 
     UIImage *image=[UIImage imageNamed:@"pic.png"]; 
     rightImage.image=image; 
     rightImage.center = rightCenter; 
     label.text = arr[1]; 
} completion:nil]; 
私は一つのケースにされてやっている何を
+1

何に役立つのだろうか?十分な詳細を書いてください。あなたの質問を正しく得られない – Lion

+0

これまでに何を試しましたか? – rahulroy9202

+0

@ lion、画面外のビューがあります。アニメーションを作成し、右側から左側にビューを移動したい – WPEvergreen

答えて

0

-(void)viewDidAppear:(BOOL)animated{ 

// [self.view setBackgroundColor:[UIColor clearColor]]; 
[self.view layoutIfNeeded]; // I am using autolayout! 
[UIView animateWithDuration:0.3f 
       animations:^ { 


        CGRect frame = self.sideMenu.frame; 
        frame.origin.x = myX; 
        self.sideMenu.frame = frame; 
        self.sideMenu.transform = CGAffineTransformScale(CGAffineTransformIdentity, 1.0, 1.0); 

       } 
       completion:^(BOOL finished) { 

// [UIView beginAnimations:nil context:nil]; 
// [UIView setAnimationDuration:5.3]; 
// [UIView commitAnimations]; 
       }]; 




} 

を右から左に出演し、それがある場合は、下記のようなものを消滅し、

- (IBAction)sideMenuClick:(id)sender { 

[UIView animateWithDuration:0.3f 
       animations:^ { 
        CGRect frame = self.sideMenu.frame; 
        frame.origin.x = self.view.frame.size.width; 
        self.sideMenu.frame = frame; 
        self.sideMenu.transform = CGAffineTransformScale(CGAffineTransformIdentity, 1.0, 1.0); 
       } 
       completion:^(BOOL finished) { 

        //       [UIView beginAnimations:nil context:nil]; 
        //       [UIView setAnimationDuration:5.3]; 
        //       [UIView commitAnimations]; 
        [self dismissViewControllerAnimated:NO completion:nil]; 
       }]; 

} 

コメントしたコードを避けてください!

side menuは、右から左に移動するUIViewです。

myX

myX = self.view.frame.size.width - self.sideMenu.frame.size.width; 

、等viewDidloadでカウントしなければならないside menuの初期位置(X =手段画面幅即ちself.view.frame.size.width)。

あなたはあなたの必要性に応じて、あなたのシナリオを管理することができます私は私の場合で行われている

希望のようなものは、これはあなたが正確にしたい:)

関連する問題