如何在Xamarin ios中定位目录资源

如何在Xamarin ios中定位目录资源,ios,xamarin,xamarin.ios,xamarin.forms,xamarin-studio,Ios,Xamarin,Xamarin.ios,Xamarin.forms,Xamarin Studio,我目前正在使用Xamarin.iOS,并试图从我的项目资源和项目目录中的目录中获取数据。但我无法在获取信息时获取数据。我甚至可以看到整个目录并没有复制到应用程序包中 下面是我的代码 string localHtmlUrl = Path.Combine(NSBundle.MainBundle.BundlePath, string.Format("NewFolder/webref/index.html")

我目前正在使用Xamarin.iOS,并试图从我的项目资源和项目目录中的目录中获取数据。但我无法在获取信息时获取数据。我甚至可以看到整个目录并没有复制到应用程序包中

下面是我的代码

string localHtmlUrl = Path.Combine(NSBundle.MainBundle.BundlePath,
                                   string.Format("NewFolder/webref/index.html")
                      );
从这一点来看,我认为您需要的是:

string fileName = "NewFolder/webref/index.html"; // remember case-sensitive
string localHtmlUrl = Path.Combine (NSBundle.MainBundle.BundlePath, fileName);
webView.LoadRequest(new NSUrlRequest(new NSUrl(localHtmlUrl, false)));
如果您有如下文件夹结构:

如果它在您的
资源
文件夹中,则您需要将其放入路径中,如下所示:

string fileName = "Resource/NewFolder/webref/index.html";
记住将所有文件的
生成操作设置为
BundleResource

也可以尝试以下方法:

var fileName = "NewFolder/webref/index.html";
webView.LoadHtmlString (File.ReadAllText (fileName), NSUrl.FromFilename (fileName));

运气好吗?你能在下面的屏幕截图中显示你的文件的位置吗?感谢lain在这里指导我,我发现问题是我在xamarin.ios项目中添加了目录结构,但在调试时,我可以看到完整的目录结构没有复制到应用包中。因此,在这种情况下,我无法获得所需的文件index.html。您是否将所有文件的构建操作设置为BundleResource?对于我来说,它现在可以工作了,感谢lain的帮助,我必须选择每个目录中的所有文件,然后提供适当的操作并访问文件夹。非常高兴它工作了!如果您认为答案解决了问题,请单击绿色复选标记将其标记为“已接受”。这有助于将注意力集中在仍然没有答案的老问题上。