gpt4 book ai didi

ios - Xamarin 表格 : CustomWebView on iOS didn't show a simple webpage

转载 作者:可可西里 更新时间:2023-11-01 06:13:22 24 4
gpt4 key购买 nike

我尝试为 iOS 实现 CustomWebViewRenderer,以便稍后可以将 header 附加到请求中。我可以看到网页 View 周围有一个边框,但看不到与边框颜色相同的背景。只看到边框内有一个白色的空白区域。

public class CustomWebViewRenderer : ViewRenderer<CustomWebView, UIWebView>
{
protected override void OnElementChanged(ElementChangedEventArgs<CustomWebView> e)
{
base.OnElementChanged(e);

var control = new UIWebView();
control.Layer.BorderColor = new CoreGraphics.CGColor(1.0f, 1.0f, 0.0f);
control.Layer.BorderWidth = 10;
control.Layer.BackgroundColor = new CoreGraphics.CGColor(1.0f, 1.0f, 0.0f);
control.Delegate = new WebViewDelegate(control, Element.Token);
SetNativeControl(control);

if (!String.IsNullOrEmpty(Element.Token) && !String.IsNullOrEmpty(Element.Url))
{
Control.LoadRequest(new NSUrlRequest(new NSUrl(Element.Url)));
}
}

protected void OnPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
var element = ((CustomWebView)Element);

if (e.PropertyName.Equals(nameof(element.Token)))
{
((WebViewDelegate)Control.Delegate).Token = element.Token;

Control.LoadRequest(new NSUrlRequest(new NSUrl(Element.Url)));
}
}

class WebViewDelegate : UIWebViewDelegate
{
public string Token { get; set; }

private UIWebView _view;
public WebViewDelegate(UIWebView view, string token)
{
_view = view;
Token = token;
}
public override bool ShouldStartLoad(UIWebView webView,
NSUrlRequest request,
UIWebViewNavigationType navigationType)
{
//request.Headers.SetValueForKey((NSString)"Authorization", (NSString)("Bearer " + Token));

return true;
}

我是否需要像 Android 一样对 .plist 文件中的任何内容进行编辑以获得互联网许可。

最佳答案

您的代码适用于 https 站点。要打开 http 网站,您需要将以下内容添加到 info.plist

<key>NSAppTransportSecurity</key> 
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

您可以限制对某些域的访问并自定义更多内容。在这里查看更多信息:Transport security has blocked a cleartext HTTP

如果您需要从您的资源中加载 html,请告诉我们。那将是不同的问题。

关于ios - Xamarin 表格 : CustomWebView on iOS didn't show a simple webpage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42546625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com