【发布时间】:2021-09-07 14:57:16
【问题描述】:
我正在使用新概念AppShell,我正在做以下流程
App.MainPage = new AppShell();
那我做
protected async override void OnStart()
{
await Shell.Current.GoToAsync($"//{nameof(LoginPage)}");
}
有了这个,我有一个 ForgetPasswordPage,来自 LoginViewModel
await Shell.Current.GoToAsync($"//{nameof(ForgetPasswordPage)}");
关键是如果我这样做
var color = new Color(33, 150, 243);
Xamarin.Essentials.Platform.CurrentActivity.Window.SetStatusBarColor(color);
在 Android 的 Create 方法中,StatusBar 具有我定义的颜色。 现在iOS的方法在哪里,像这样?
我尝试了这些解决方案
没有成功...
有人可以解释一下,如何更改状态码,但我想在我的 ContentPage 中设置它,我可以使用样式,或者像这样的简单代码行
Xamarin.Essentials.Platform.CurrentActivity.Window.SetStatusBarColor(color);
在Android项目中使用。
我做了其他帖子中的步骤,我得到了:
Foundation.MonoTouchException: '抛出 Objective-C 异常。名称:NSInternalInconsistencyException 原因:应用程序在 UIApplication 上调用了 -statusBar 或 -statusBarWindow:此代码必须更改,因为不再有状态栏或状态栏窗口。在窗口场景中使用 statusBarManager 对象。 本机堆栈跟踪: 0 CoreFoundation 0x00007fff20422fba __exceptionPreprocess + 242
System.Reflection.TargetInvocationException Message=异常已被调用目标抛出
【问题讨论】:
标签: xamarin.forms