現在、ボタンのホームである Container View Controller があります。これを押すと、iPad の iTunes のように、ビューが反転して大きくなります。
メイン ビュー コントローラーのレイアウト:
コンテナをひっくり返す:
フリップ ボタンが押されたら、このコード (コンテナー ビューのビュー コントローラー内) を使用してコンテナーをフリップします。
FrontVC *cb = [[FrontVC alloc]initWithFrame:CGRectMake(0, 0, 92, 65)];
FlipVC *cf = [[FlipVC alloc]initWithFrame:CGRectMake(0, 0, 92, 65)];
[UIView transitionWithView:self.view
duration:1
options:UIViewAnimationOptionTransitionFlipFromLeft
animations:^{
// Remove last view
for (UIView *subview in self.view.subviews) {
[subview removeFromSuperview];
}
[self.view addSubview:(displayingPrimary ? cb: cf)];
}
completion:^(BOOL finished) {
if (finished) {
displayingPrimary = !displayingPrimary;
}
}];
これは、2 つのビューが同じサイズである場合にうまく機能し、コードを使用してビューをレイアウトできます。FrontVC と FlipVC は UIView のサブクラスです。
ビューを画面の中央に移動するには、このようなことを考えていましたが、そこから立ち往生しています。ねえ、これがうまくいくかどうかさえわかりません!これを行うより良い方法はありますか?
if (!displayingPrimary) {
self.view.center = CGPointMake(320.0f, 480.0f);
cb.center = CGPointMake(320.0f, 480.0f);
}
else
{
self.view.center = CGPointMake(59, 324);
}
私が目指しているもの:
理想的には、ストーリーボードでフリップ ビューを設計し、iTunes のように「タイル」を成長させたいと考えています。
私の例では、次のようにしたいと思います。
ストーリーボードでこれをどのように設計できますか? ビュー コントローラーを作成しようとすると、フリップ サイズ ビュー コントローラーのサイズにサイズを変更できません。