0

カートビューを作成しましたが、productview のボタンをクリックしたときにこのビューをモーダルビューとして表示したいのですが、どうすればよいですか? 実際に私はこのようにしました

 UIViewController *nav=[[UIViewController alloc]initWithNibName:@"CartView-iPad"    bundle:nil];
    nav.modalPresentationStyle=UIModalPresentationFormSheet;
    nav.modalTransitionStyle=UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:nav animated:YES];
    CGRect frame=nav.view.frame;
    frame.origin.x -= 75;
    frame.origin.y = 100;
    nav.view.frame=CGRectMake(frame.origin.x,  frame.origin.y , 672, 393);

しかし、問題は、フォームシートビューが来て、カートビューだけが必要であることを明らかにしていることです。また、モーダルビューを閉じるには、カートビューの右側に閉じるボタンが必要です。

4

1 に答える 1

0

問題は、モーダル ビュー コントローラーのフレームを手動で設定しようとしている可能性があります。私の知る限り、これはお勧めできません。このUIModalPresentationFormSheetオプションは、モーダルの目的のサイズをすでに示しています。

CartView-iPad戻るボタンについては、 -xib-fileに戻るボタンのあるナビゲーション バーを追加する必要があります。それを機能させるにはCartViewController、戻るボタンの押下を処理する UIViewController (例: ) のサブクラスを作成する必要があります。今navのところ、xib ファイルのアクションをどうするか分からない通常の UIViewController です。

次に、新しいView Controllerで、戻るボタンを接続する次のような関数を作成できます。

- (IBAction)backButtonPressed
{
   [self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
}
于 2012-08-10T14:22:39.087 に答える