林發展具有不同於我們的CMS 一些內容的頁面需要被顯示成WebView
一個應用程序,因爲他們有HTML,其某些超鏈接Xamarin表單處理的超鏈接在網頁視圖導航問題
林控制的超鏈接至極正如預期在Android 即時通訊Xamarin.Forms.WebView事件
即時通過Navigating
這樣做可以使用e.Url
發送用戶到內部頁面。
例子:
public class HybridWebView : WebView
{
public String Code { get; set; }
public HybridWebView()
{
Navigating += HybridWebView_Navigating;
}
private void HybridWebView_Navigating(object sender, WebNavigatingEventArgs e)
{
if(e.Url.EndsWith(".aspx")
{
var CMS = new CMSView(e.Code, null);
Navigation.PushAsync(CMS);
e.Cancel = true;
}
}
}
注意這個效果很好!
的問題是:
當我嘗試這在iOS上我得到一個空白/白WebView
。 我試圖在iOS上創建一個CustomRenderer,但是因爲我將WebView子類化以定製它,所以我無法到達屬性Code
。
我怎樣才能達到ios自定義渲染器的屬性?我知道e.NewElement
,但ShouldStartLoad
預計UIWebView,而不是我的自定義HybridWebView。
有沒有人有任何提示或想法,我可以達到這個。
在此先感謝
Thnx jgoldberger我不需要投e.NewElement,因爲它知道它的類型的hybridview,但我怎麼能使用ShouldStartLoad它期望UIWebView作爲參數,我需要在那裏使用Hybridview。 –
除非我遺漏了一些東西,否則我提到的NativeView應該是基礎渲染器爲您的HybridWebView創建的。所以這應該是UIWebView與ShouldStartLoad一起使用,除非我誤解? – jgoldberger