0

わかりましたので、iPhoneの標準のGoogleマップアプリのように部分的な折り畳みアニメーションを再作成しようとしています。下部のツールバーはそのままですが、その上のビューはカールします。ここにいくつかの画像があります: http://i.stack.imgur.com/MjTx6.png

(なぜかハイパーリンクは入れません<_<)

http://i.imgur.com/lc9ig.png http://i.imgur.com/hqMlN.png

ご覧のとおり、白いビューは適切なサイズ (320x416、ポイント: (0,0)) で、反転しています。ツールバーはそのままです。フォーカスが白いビューに戻ると、サイズが変更されます (320x460、ポイント: (0,-22))。

viewWillAppear、viewWillDissapear、viewDidAppear、viewDidDissapear をホワイト ビュー クラスに追加しましたが、これらのメソッドはどれも呼び出されません (ビューが最初に初期化されたときに表示されるメソッドが呼び出されると想定しているため、これは奇妙です)。

白いビューを初期化する場所は次のとおりです。

- (void)viewDidLoad {
    [super viewDidLoad];
 mapController = [[MapViewController alloc] init]; 
 mapController.modalPresentationStyle = UIModalPresentationFullScreen;
 [self.view addSubview:mapController.view];
}

curl ボタンを押すと、次のようになります。

- (IBAction)curlPage:(id)sender {
 SettingsViewController *settingsController = [[[SettingsViewController alloc] init] autorelease];
 settingsController.modalTransitionStyle = UIModalTransitionStylePartialCurl;
 [mapController presentModalViewController:settingsController animated:YES];
}

だから私は私の質問は次のとおりだと思います:コントロールが白いビュー(mapController)に戻ったときに、ビューを手動でサイズ変更して必要なサイズに戻すことができるメソッドが呼び出されるか、それ自体のサイズ変更を停止できる方法はありますか? .

ありがとう

4

1 に答える 1

0

さて、私はこれに対する答えを考え出すことになりました。サイズが変更された理由はわかりませんが、フレームを手動で設定viewWillDissapearすると問題が解決したようです。

于 2011-04-19T13:23:27.810 に答える