0

TabBar を AppBar コンポーネントの直下に追加するためにマテリアル デザイン コンポーネントの Xamarin ポートを使用しようとしていますが、TabBar を BottomBar ビューとして追加すると、NavigationBar が押し上げられ、何が間違っているのかわかりません。

ここに画像の説明を入力

これは私の ViewDidLoad() です:

public override void ViewDidLoad()
    {
        base.ViewDidLoad();
        Styler.CellStyle = MDCCollectionViewCellStyle.Card;
        AddChildViewController(appBar.HeaderViewController);
        appBar.HeaderViewController.HeaderView.TrackingScrollView = CollectionView;

        appBar.NavigationBar.BackgroundColor = UIColor.Gray;
        appBar.NavigationBar.TintColor = UIColor.White;
        var attr = new NSDictionary<NSString, NSObject>(
        UIStringAttributeKey.ForegroundColor, UIColor.White);
        appBar.NavigationBar.TitleTextAttributes = attr;

        var tabBar = new MDCTabBar()
        {
            ItemAppearance = MDCTabBarItemAppearance.Titles,
            Alignment = MDCTabBarAlignment.CenterSelected,
            AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleBottomMargin
        };
        tabBar.Items = new UITabBarItem[] {
            new UITabBarItem("Event 1", null, 0),
            new UITabBarItem("Event 2", null, 0)
        };
        tabBar.SizeToFit();
        appBar.HeaderStackView.BottomBar = tabBar;

        appBar.HeaderViewController.HeaderView.BackgroundColor = App.AFSabreDark;
        appBar.HeaderStackView.BackgroundColor = UIColor.Blue;

        appBar.AddSubviewsToParent();

        refreshControl.ValueChanged += async (sender, e) =>
        {
            await RefreshAsync();
        };

        CollectionView.Add(refreshControl);
        CollectionView.RegisterClassForCell(typeof(MDCCollectionViewTextCell), cellId);

        model.DataUpdated += (sender, e) => {
            CollectionView.ReloadData();
        };
        model.PullData();

    }

助けてくれてありがとう!

4

1 に答える 1

1

を調整して、次HeaderViewのようMinimumHeightに展開できます。NavigationBar

appBar.HeaderViewController.HeaderView.MinimumHeight = 150;

またMaximumHeight、引っ張るときの最大高さを制限するように設定することもできます:

appBar.HeaderViewController.HeaderView.MaximumHeight = 400;
于 2018-02-22T07:25:43.830 に答える