iOS 11大型游戏Xamarin.Forms

Edw*_*rey 2 uinavigationbar xamarin.forms ios11

如何在我的Xamarin.Forms应用程序中启用iOS 11 首选 LargeTitles?

我尝试创建一个从PageRendererfor 派生的自定义渲染器NavigationPage,设置:

ViewController.NavigationController.NavigationBar.PrefersLargeTitles = true;
Run Code Online (Sandbox Code Playgroud)

然而,这没有任何影响.

Ger*_*uis 6

[assembly: ExportRenderer(typeof(NavigationPage), typeof(NavBarRenderer))]
namespace LargeTitleSample.iOS
{
    public class NavBarRenderer : NavigationRenderer
    {
        protected override void OnElementChanged(Xamarin.Forms.Platform.iOS.VisualElementChangedEventArgs e)
        {
            base.OnElementChanged(e);

            NavigationBar.PrefersLargeTitles = true;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

您必须为NavigationPage继承创建自定义渲染器NavigationRenderer.然后将PrefersLargeTitles属性设置NavigationBar为true.

似乎当你向页面添加一些可滚动的控件时,它会在向上滚动时自动具有"从大到小"的效果,至少对于a ListView.

工作示例repo在这里:https://github.com/jfversluis/LargeTitleSample