当前位置: 首页 > 知识库问答 >
问题:

Xamarin Android 6.0 Java。Lang.NoSuchMethodError带有视图。塞特克斯

靳高明
2023-03-14

我为一个标签制作了一个自定义的呈现器,它将HTML代码呈现为文本。

当我试图设置格式化文本时,会出现以下错误:

未处理的异常:Java。朗。NoSuch方法错误:没有静态方法"Landroid/text/Html;. fromHtml(Ljava/lang/String; I)Landroid/text/跨越;"发生

这是我的一段代码:

Control.SetText(Html.FromHtml(View.Text.ToString(), FromHtmlOptions.ModeLegacy), TextView.BufferType.Spannable);

这只发生在Android6.0上,从7.0开始,一切正常。

我该怎么解决这个问题?

有解决办法吗?

谢谢你!

使现代化

感谢@乔恩·道格拉斯,我以这种方式解决了:

 if (global::Android.OS.Build.VERSION.SdkInt >= global::Android.OS.BuildVersionCodes.N) {
   Control.SetText(Html.FromHtml(View.Text.ToString(), FromHtmlOptions.ModeLegacy), TextView.BufferType.Spannable);
 } else {
   // For API < 24 
   Control.SetText(Html.FromHtml(View.Text.ToString()), TextView.BufferType.Normal);
 }

对于“else”路径,VisualStudio告诉我,虽然不推荐使用,但它仍然可以编译。

共有1个答案

方寒
2023-03-14

您使用的是API 24中引入的重载方法。因此,为了正确地支持这一点,您需要运行时检查

请参阅Html类以了解可以适当使用的重载。例如:

1参数法

3参数方法

 类似资料:
  • 我正试图使用Kryo库来执行对象的深度复制,但我遇到了一个小问题。我想深度复制一个没有瞬态变量的对象。我知道可以将用于,如下所示: 但是我必须为每个类设置一个新的。我可以从Kryo获得一个默认的,并在那里设置吗?我尝试了类似的解决方案,但它什么也做不到:

  • 我在Windows 10中使用Python 3.6,并且已经安装了Pytesseract,但我在代码Tessercr中找到了一个代码,顺便说一下,我无法安装。有什么区别?

  • 问题内容: 以下Ajax请求在做什么错…? 链接/通话: 路线: 控制器: 风景: 部分称为: 错误: 看起来Rails正在寻找一个名为“更新”的视图-为什么以及如何解决此问题? 非常感谢!汤姆 问题答案: 好的,对于任何有类似问题的人,我都找到了解决方案: 问题在于,在Rails3中,Prototype被jQuery取代。因此,以下代码不再有效: 以下2个链接将说明有关如何处理jQuery的详细

  • 我已经做了一些研究,我还没有找到一个示例或实现,允许您在滑动时将一个视图(下面的示例图像)放在RecyclerView下面。是否有人有任何例子或想法,如何实现这将不使用库。 下面是我如何实现扫瞄以解除职务。

  • 我的视图控制器中有几个视图,当检测到向上滑动时向上移动,然后当检测到向下滑动时向下移动。我使用CGRectOffset通过调整y原点来强制视图移动。我现在使用IB对视图施加了约束,我不确定移动视图的最佳方法是什么,以便它们最终在iPhone 5、6和6上的正确位置。 目前我正在做这样的事情: 用比值改变常数是否更好?因此,对于上面的约束,不使用338,这样做是否更好:

  • 我第一次使用JavaFX来尝试制作一个应用程序,我可以用它来演示一个带有按钮控件的简单动画。为此,我使用了BoarderPane作为初级阶段,左侧、右侧和底部都使用了GridPanes。 然而,对于中心,我需要能够画一个球内有一条线,我可以旋转不同的视图,同时能够动画,或至少快照移动内的线。 我试过用一个窗格做中心,但不起作用。我试着把它变成自己的场景和副场景,但都不起作用。我不能使用画布,因为它