使用 WebView Xamarin 表单加载本地 HTML

2023-12-15

我正在尝试使用 Xamarin 表单在 Web 视图中加载本地 HTML 页面。 我正在使用开发文档中的基本示例,尽管我可以获取要加载的 URL,但无法加载我自己的 HTML 页面。只需要通过 Android 即可完成此操作,因此无需担心 IOS 和 Windows。

Xaml:

 <WebView
    x:Name="webviewjava"></WebView>

背后的代码:

 public partial class javscriptExample : ContentPage
{
    public interface IBaseUrl { string Get(); }
    public javscriptExample()
    {
        InitializeComponent();
        var source = new HtmlWebViewSource();

        source.BaseUrl = DependencyService.Get<IBaseUrl>().Get();

        webviewjava.Source = source;
    }
}

平台特定文件(LocalFile.cs): 请注意,这已被设置为 Android 资产。

 [assembly: Dependency(typeof(LocalFiles))]
namespace maptesting.Droid
{
    public class LocalFiles: IBaseUrl
    {
        public string Get()
        {
            return "file:///android_asset/";
        }

    }
}

在资产文件夹下有一个“TestWebPage.html”,也设置为 Android 资产。

虽然我不知道问题是什么,但我已经将其进行了调试,并且基本 url 返回为空白。需要明确的是,我没有找到未找到的文件,屏幕只是空白。 另外,我不确定这是否会产生影响。 LocalFiles.cs 文件中的“IBaseUrl”没有语法突出显示。所以我不确定它是否能“看到”它。

有任何想法吗?


我也遇到同样的问题,但是我通过以下方式解决了

使用“UrlWebViewSource”而不是“HtmlWebViewSource”

var urlSource = new UrlWebViewSource();

string baseUrl = DependencyService.Get<IWebViewBaseUrl>().GetBaseUrl();
string filePathUrl = Path.Combine(baseUrl, "imprint.html");
urlSource.Url = filePathUrl;
WebBrowser.Source = urlSource;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 WebView Xamarin 表单加载本地 HTML 的相关文章

  • 具有子列表属性映射问题的自动映射器

    我有以下型号 Models public class Dish Required public Int64 ID get set Required public string Name get set Required public str
  • 我的线程图像生成应用程序如何将其数据传输到 GUI?

    Mandelbrot 生成器的缓慢多精度实现 线程化 使用 POSIX 线程 Gtk 图形用户界面 我有点失落了 这是我第一次尝试编写线程程序 我实际上并没有尝试转换它的单线程版本 只是尝试实现基本框架 到目前为止它是如何工作的简要描述 M
  • 以编程方式检查页面是否需要基于 web.config 设置进行身份验证

    我想知道是否有一种方法可以检查页面是否需要基于 web config 设置进行身份验证 基本上如果有这样的节点
  • 如何在 Android NDK 中创建新的 NativeWindow 而无需 Android 操作系统源代码?

    我想编译一个 Android OpenGL 控制台应用程序 您可以直接从控制台启动 Android x86 运行 或者从 Android x86 GUI 内的 Android 终端应用程序运行 这个帖子 如何在 Android NDK 中创
  • 32 位应用程序的特征最大矩阵大小

    所以 我正在寻找Eigen http eigen tuxfamily org index php title Main Page当我尝试声明大于 10000x10000 的矩阵时 包崩溃 我需要声明一个像这样的矩阵 可靠地大约有 13000
  • iOS App Store ExecutionEngineException 尝试 JIT 编译

    我有一个非常尴尬的问题 我已经为 iOS 构建了我的应用程序 并在所有模拟器上对其进行了测试 并且运行良好 我已将其安装在设备 iPhone 6 plus 上 效果也很好 然而 当我将其提交到应用商店时 反馈是它在所有设备上启动时都会崩溃
  • 从多个类访问串行端口

    我正在尝试使用串行端口在 arduino 和 C 程序之间进行通信 我对 C 编程有点陌生 该程序有多种用户控制形式 每一个都需要访问串口来发送数据 我需要做的就是从每个类的主窗体中写入串行端口 我了解如何设置和写入串行端口 这是我的 Fo
  • 暂停下载线程

    我正在用 C 编写一个非常简单的批量下载程序 该程序读取要下载的 URL 的 txt 文件 我已经设置了一个全局线程和委托来更新 GUI 按下 开始 按钮即可创建并启动该线程 我想要做的是有一个 暂停 按钮 使我能够暂停下载 直到点击 恢复
  • 访问者和模板化虚拟方法

    在一个典型的实现中Visitor模式 该类必须考虑基类的所有变体 后代 在许多情况下 访问者中的相同方法内容应用于不同的方法 在这种情况下 模板化的虚拟方法是理想的选择 但目前这是不允许的 那么 模板化方法可以用来解析父类的虚方法吗 鉴于
  • 如何从网站下载 .EXE 文件?

    我正在编写一个应用程序 需要从网站下载 exe 文件 我正在使用 Visual Studio Express 2008 我正在使用以下代码 private void button1 Click object sender EventArgs
  • 即使手动设置显示环境变量后,WSL Ubuntu 也会显示“错误:无法打开显示”

    我在 WSL Ubuntu 上使用 g 我使用 git 克隆了 GLFW 存储库 使用了ccmake命令配置并生成二进制文件 然后使用make在 build 目录中最终创建 a文件 我安装了所有OpenGL相关的库 usr ld 我不记得我
  • Qt 创建布局并动态添加小部件到布局

    我正在尝试在 MainWindow 类中动态创建布局 我有四个框架 它们是用网格布局对象放置的 每个框架都包含一个自定义的 ClockWidget 我希望 ClockWidget 对象在调整主窗口大小时相应地调整大小 因此我需要将它们添加到
  • 耐用功能是否适合大量活动?

    我有一个场景 需要计算 500k 活动 都是小算盘 由于限制 我只能同时计算 30 个 想象一下下面的简单示例 FunctionName Crawl public static async Task
  • 结构体指针的动态数组

    我必须使用以下代码块来完成学校作业 严格不进行任何修改 typedef struct char firstName char lastName int id float mark pStudentRecord pStudentRecord
  • 运算符“==”不能应用于“int”和“string”类型的操作数

    我正在编写一个程序 我想到了一个数字 然后计算机猜测了它 我一边尝试一边测试它 但我不断收到不应该出现的错误 错误是主题标题 我使用 Int Parse 来转换我的字符串 但我不知道为什么会收到错误 我知道它说 不能与整数一起使用 但我在网
  • 双精度类型二维多维数组的 pinvoke 编组作为 c# 和 c++ 之间的输入和输出

    我有以下我正在尝试解决的双物质类型的 2d 多维数组的 c 和 c pinvoke 编组 我已经查看了以下热门内容以获得我目前拥有的内容使用双精度数组进行 P Invoke 在 C 和 C 之间编组数据 https stackoverflo
  • WinRT 定时注销

    我正在开发一个 WinRT 应用程序 要求之一是应用程序应具有 定时注销 功能 这意味着在任何屏幕上 如果应用程序空闲了 10 分钟 应用程序应该注销并导航回主屏幕 显然 执行此操作的强力方法是在每个页面的每个网格上连接指针按下事件 并在触
  • 使用 CSharpCodeProvider 类编译 C# 7.3 的 C# 编译器版本是什么?

    我想使用 Microsoft CSharp CSharpCodeProvider 类来编译 C 7 3 代码 编译器版本在 IDictionary 中指定 在创建新的 CSharpCodeProvider 时将其作为输入 例如 Compil
  • 用于 C# XNA 的 Javascript(或类似)游戏脚本

    最近我准备用 XNA C 开发另一个游戏 上次我在 XNA C 中开发游戏时 遇到了必须向游戏中添加地图和可自定义数据的问题 每次我想添加新内容或更改游戏角色的某些值或其他内容时 我都必须重建整个游戏或其他内容 这可能需要相当长的时间 有没
  • 错误:无效使用不完整类型“类 Move”/未定义对 Move::NONE 的引用

    拜托 我不知道为什么这个简单的代码被拒绝 它给了我 2 个编译错误 请帮帮我 I use 代码 块 20 03 我的编译器是GNU GCC 移动 hpp class Move public Move Move int int public

随机推荐

  • Solr Lucene 中连字符/破折号的挑战

    我试图让 Solr 仅提取格式类似于 n nnnnnnn 的票证的第二个 7 位数字部分 原本我希望把全票保留在一起 根据文档 数字与数字应该保留在一起 但在解决这个问题一段时间并查看代码后 我认为情况并非如此 Solr 总是生成两个项 因
  • Linq - 将 GroupBy 与我自己的类型与匿名类型一起使用

    我有一个要使用 Linq 分组的对象列表 对象类型是 GroupRating 我想按它们的 Params 属性对它们进行分组 public class GroupRating public long Id get set public Pa
  • 获取加起来达到目标​​总和的元素组合

    是否可以得到a总和等于变量的列表元素sum 我尝试过迭代 如果我想从列表中获取 2 个元素 也许可以这样做 但我不知道如何获取更多元素 def function sum a h c 1 2 3 4 5 6 7 8 return f sum
  • emacs 中的 Shift 箭头选择

    我正在使用 GNU Emacs 23 2 1我的init el cua mode 1 transient mark mode 1 setq shift select mode t global linum mode 1 show paren
  • PL/SQL - 如何在 IN 子句中使用数组

    我试图在 IN 子句中使用我的过程的输入值数组作为游标的 where 子句的一部分 我知道以前有人问过这个问题 但我还没有看到如何使我的语法正确编译 在封装规范中 类型为 TYPE t brth dt IS TABLE OF sourceT
  • 在大目录中转换 XML 时出现 java.lang.OutOfMemoryError

    我想使用 XSLT2 在一个具有很多级别的巨大目录中转换 XML 文件 文件数量超过 100 万个 每个文件大小 4 至 10 kB 一段时间后 我总是收到 java lang OutOfMemoryError Java 堆空间 我的命令是
  • 将 MemoryStream 写入响应对象

    我正在使用以下代码来传输 MemoryStream 对象中的 pptx 但是当我打开它时 我在 PowerPoint 中收到修复消息 将 MemoryStream 写入响应对象的正确方法是什么 HttpResponse response H
  • 根据日期和时区计算 tm_isdst

    当我运行线路时 time strptime 2012 06 01 12 00 00 time strftime Z Y m d H M S Z 它为我创建了一个结构 但标志tm isdst是错的 六月初 DST 已生效 但无论我在哪一天输入
  • 如何在Access表中插入列描述?

    如何使用 SQL 在 Access 表中插入列的描述 I do CREATE TABLE TAB A COLUMN1 TEXT 30 COLUMN2 REAL PRIMARY KEY COLUMN1 但如何为每列插入描述 你不能用 SQL
  • 我的不和谐机器人代码正在运行,但没有响应我的命令[重复]

    这个问题在这里已经有答案了 我是一名编程大三学生 我了解 Node js 并且想编写自己的 Discord 机器人 我下面写的代码不起作用 你能帮我解决这个问题吗 const Client Intents require discord j
  • Powershell 在空文件夹上比较对象

    我正在编写一个简单的 DLL 复制脚本来帮助我的开发团队设置他们的本地环境 我检查 build devdrop 文件夹并获取 DLL 文件列表 然后 我查看本地文件夹并复制所有较新的 DLL 我的问题是当本地文件夹为空时 即脚本第一次运行
  • Scala Akka HTTP 转换参数为 java.time.ZonedDateTime

    我正在使用 Akka HTTP 在 Scala 中 开发 REST 服务 我希望将传入 http get 请求的参数转换为 ZonedDateTime 类型 如果我尝试使用 String 或 Int 但使用 ZonedDateTime 类型
  • 从 NetworkStream 读取特定数量的字节

    我正在尝试从网络流中读取已知长度的消息 我有点期待NetworkStream Read 将等待返回 直到我给它的缓冲区数组已满 如果不是 那么这样做的意义何在 ReadTimeout财产 我用来测试我的理论的示例代码 public stat
  • Haskell 打印字符串标准输出

    我需要打印 powerset 中的元素 现在我的代码的输出是这样的 a ab b x xy xyz xz y yz z 但是 我需要输出不带引号 如下所示 a ab b x xy xyz xz y yz z 这就是我所拥有的 我该如何修复它
  • Rails:如何在 Heroku 上使用系统 zip 从 xml 模板制作 docx?

    我在本地工作 将模板文件存储在 Rails root tmp using system cd tmp template zip r filename 压缩文件 将 docx zip 存档 发送到 S3 然后发送到浏览器 问题是 Heroku
  • 页眉/页脚终端显示[重复]

    这个问题在这里已经有答案了 如何创建一个包含静态页眉和页脚的 python 脚本 如下图所示 您可以使用curses对于蟒蛇 例子 import curses myscreen curses initscr curses start col
  • 从 ASP.Net MVC Ajax 请求服务器重定向到新页面

    我正在尝试使用另一个控制器调用方法RedirectToAction 但这不起作用 你能解释一下我做错了什么吗 HttpPost public ActionResult AddToWishList int id bool check var
  • JS 对象中的键(字符串)长度有限制吗?

    因此 我们有一个对象 其中键是 id int 值是字符串 但我们注意到 大多数时候 我们是根据字符串来查找 id 的 所以我们决定反转它 让字符串作为键 值作为 id 因为这样我们就不用遍历每个项目并比较值 而是可以这样做var id st
  • iOS 调试构建安装失败

    我有一个 CN1 测试项目 最后一次构建并成功安装在各种测试设备上是在 2017 年 1 月中旬 在使用具有相同证书 配置文件和设备的当前 CN1 版本重建此项目时 它现在无法安装 并显示 无法下载应用程序 此时无法安装 信息 关于可能出现
  • 使用 WebView Xamarin 表单加载本地 HTML

    我正在尝试使用 Xamarin 表单在 Web 视图中加载本地 HTML 页面 我正在使用开发文档中的基本示例 尽管我可以获取要加载的 URL 但无法加载我自己的 HTML 页面 只需要通过 Android 即可完成此操作 因此无需担心 I