1

とても些細なことをしようとしています!うまくいかないなんて信じられない!たぶん何かを見落としています!私のiPhoneアプリにホームページがあります。最初は画面の外にあるサブビューを追加したい (つまり、右側に隠されている、すなわちその frame.origin.x が画面の幅になる)。次に、そのエントリをフリップでページにアニメーション化したい。サブビューを部分的に表示します (約半分の画面のみ)。

[self.mySubview.view setFrame:CGRectMake([[UIScreen mainScreen] bounds].size.width, 0.0,
                                                 [[UIScreen mainScreen] bounds].size.width,
                                                 [[UIScreen mainScreen] bounds].size.height)];
[self.view addSubview:self.mySubview.view];
NSLog(@"frame before x %f", self.mySubview.view.frame.origin.x);

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
      [self.mySubview.view setFrame:CGRectMake([[UIScreen mainScreen] bounds].size.width*(2/5), 0.0,
                                                       [[UIScreen mainScreen] bounds].size.width,
                                                       [[UIScreen mainScreen] bounds].size.height)];
[UIView commitAnimations];
NSLog(@"frame x %f", self.mySubview.view.frame.origin.x);

これをiPadで実行しようとしています。ただし、サブビューのフレームは最初は 768.0 に設定されていません。また、アニメーションは発生していません。アニメーションの前後で、サブビューの frame.origin.x は 0.0 のみです。どこで間違ったのでしょうか?助けてください。ストーリーボードの自動サイズ変更矢印を変更してみました (削除、追加) ... 何も機能しないようです!

4

2 に答える 2

1

これを試して

   Someviewcontroller *c = initWithNibName
     c.view.frame = CGRectMake(0, 0, 200, 200);
     [self addSubView:c];
于 2013-04-16T10:47:08.447 に答える