1

MMDrawerControlleriOS アプリでスライド メニューを作成するために使用しています。メニューはうまく機能していますが、いくつか問題があります。私のメニューはViewControllerTableView非常に軽い 4 つのカスタム セルを使用しています。

  1. アプリにトップ バーが表示されるようになりました。これをオフにする方法がわかりません。
  2. メニューを表示するボタンがあります。画面上で指をスライドさせてメニューを開くとよく見えますが、アプリを初めて実行してこのボタンを押すと、メニューが表示されて視覚的な遅れが生じます。メニューが完全にロードされていないようです。そのため、最初に画面の上部近くに表示され、次に適切な場所に表示されます。ボタンで初めてメニューを開いたときにのみ発生します。これがアクションです。

    @IBAction func showMenu(sender: AnyObject) 
    {
      var appDelegate : AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
      appDelegate.centerContainer?.toggleDrawerSide(MMDrawerSide.Left, animated: true, completion: nil)
    }
    
  3. メニューの幅を設定するにはどうすればよいですか? 私のメニューは非常に幅広いので、カスタマイズして小さくすることもできます。

4

2 に答える 2

3
  1. 使用できるステータスバーを非表示にするには

    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
    

    または迅速なバージョン

    UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.None)
    
  2. おそらく、で初期化を行いすぎてviewDidLoadいるため、少し遅れます。

  3. を使用できます。

    @property (nonatomic, assign) CGFloat maximumLeftDrawerWidth;
    

    最大幅を設定するプロパティ。

于 2015-04-30T06:43:26.400 に答える
0
  1. mmdrawer のナビゲーション コントローラーが原因である可能性があります。このため、これらのコントローラーのナビゲーション バーを非表示にする必要があります。

    [navigationController setNavigationBarHidden:YES];

    迅速なバージョン:

    navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: true)

    MMDrawer には、中央、右、左の VC 用の 3 つのナビゲーション コントローラーがあるため、使用状況に応じて、使用しているナビゲーション コントローラーのナビゲーション バーを非表示にすることができます。

  2. 画面をスライドさせてビューを開いているときに正常に動作しているとのことで、これは正常に動作するはずです。私の場合は、両方のケースで正常に動作します。@Majsterが言ったように、「おそらくviewDidLoadで初期化を行いすぎているため、少し遅れます。」そうかもしれません。

  3. 使用できます

    [drawerController setMaximumRightDrawerWidth:[UIScreen mainScreen].bounds.size.width/4];
    ドロワーが画面の 1/4 を取得するため。

于 2015-04-30T07:45:33.627 に答える