从 Webview 导航到 xamarin 表单中的应用程序页面

Posted

技术标签:

【中文标题】从 Webview 导航到 xamarin 表单中的应用程序页面【英文标题】:Navigating from Webview to an app page in xamarin forms 【发布时间】:2021-12-21 09:32:32 【问题描述】:

我正在将我的网站完全克隆到一个应用程序中。但是出于地图的目的,我试图导航到我的应用程序页面,该页面不是 web 视图。 有人可以指导我吗?下面是我的代码。

    private void WebView_Navigated(object sender, WebNavigatedEventArgs e)
    
        WebView view = new WebView();
        view.Reload();
        if (e.Url.Contains("thank-you-woo"))
        
        System.Threading.Thread.Sleep(1000);

            DisplayAlert("Track", "Tracking Started", "Close this alert");
           NavigationPage page = new NavigationPage(new MainPage());
        

    

请注意,pushasync 或导航页面,两者都没有将我带到所需的页面。

【问题讨论】:

网页视图页面是否已包含在 NavigationPage 中? 您正在创建一个新的导航页,但您并没有替换实际的导航页。你可能需要做类似Application.Current.MainPage = new NavigationPage(new MainPage()) 从您显示的代码中不清楚您在做什么。您创建一个 WebView - 但不要将它放在 UI 中可见的任何地方。您创建了一个新的 NavigationPage - 为什么?在此代码运行时,您在屏幕上有什么 - 显示创建该代码的代码。 WebView_Navigated 首先是如何被调用的?您正在显示一些 WebView?然后想做什么?需要更详细地描述应该发生的事情,然后是所有相关代码。例如。 “首先,我通过此代码显示(最初可见的任何内容)”。然后我试图展示(你现在想看到的).. 【参考方案1】:

在 App.xaml.cs 中设置 NavigationPage,然后使用 Navigation.PushAsync 为我工作。

App.xaml.cs:

 public App()
    
        InitializeComponent();

        MainPage = new NavigationPage(new Page29());
    

Page29.xaml.cs:

  async void WebView_Navigated(object sender, WebNavigatedEventArgs e)
    
        await Navigation.PushAsync(new Page30());
    

【讨论】:

以上是关于从 Webview 导航到 xamarin 表单中的应用程序页面的主要内容,如果未能解决你的问题,请参考以下文章

Hybrid WebView 导航和导航事件 Xamarin Form

使用 Xamarin 表单更新到 AppCompat 后 WebView 中的白色叠加层

Xamarin.Forms webview 进行身份验证,导航到新页面(Shell)并需要再次重新验证?

Xamarin 表单 - Webview 检测 URL 更改

如何将 android 活动导航到 xamarin 表单

使用C#和Xamarin表单 - 如何在不设置闭包链的情况下关闭一个模态