如何在iOS中使用Material Designs“标准”底页?

问题描述 投票:1回答:1

我正在尝试在iOS应用(Xamarin,这表示它是用C#编写)中使用Google的底页。我设法使用了“模态”变体,该变体会在其出现时使视图变暗,但是我需要的是一个底页,该底页可以用作Google Maps应用程序中的底页-允许对“下方”的两个区域进行操作底页以及底页本身的内容。

我已经获得了nuGet,其中包含一堆Material Design组件(Xamarin.iOS.MaterialComponents),但是我还找不到任何文档说明如何实现“点击”底页。制作此应用程序的(Xamarin)Android版本时,我设法实现了“点击后”底表-但是在Android中,它以一种称为BottomSheetBehavior的形式出现,它附加到CoordinatorLayout的子代中。 -这让我感到很困惑,因为(AFAIK)iOS中没有相应的布局构造。

这段代码构造了一个包含一些内容的新viewController,并将其显示在底部表单中,该表单在当前视图上方向上滑动。 -一切都很好,但是有人对如何使背景视图“可操作”有任何想法吗?

UIViewController content = new UIViewController();
content.View.Frame = new CoreGraphics.CGRect(0, 0, 200, 200);
content.View.BackgroundColor = UIColor.Blue;
Button b = new Button();
b.Frame = new CoreGraphics.CGRect(0, 0, 100, 20);
b.SetTitle("A Button appears!", UIControlState.Normal);
content.Add(b);

BottomSheetController bs = new BottomSheetController(content);         
bs.PreferredContentSize = new CoreGraphics.CGSize(300, 300);
PresentViewController(bs,true,null);

感谢您的阅读! :)

ios xamarin material-design bottom-sheet
1个回答
0
投票

如果我没记错的话,可以使用UIAlertController进行此操作

您要做的就是这样:

var alert = UIAlertController.Create("Option!", "Option!?", UIAlertControllerStyle.ActionSheet);

然后只显示它

PresentViewController (alert, animated: true, completionHandler: null);

有关更多信息,请检查Microsoft文档,

祝你好运。>>

如有疑问,请随时回来

© www.soinside.com 2019 - 2024. All rights reserved.