You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Xamarin.Forms中使用Android Oreo API时TextView方法报错求助

解决Xamarin Android中TextView.SetJustificationMode未定义的问题

嘿,我之前在做Xamarin自定义Label渲染器时也碰到过一模一样的问题,给你几个靠谱的解决方向:

  • 确认项目的Android目标框架版本
    虽然你已经安装了API26/27,但你的项目可能还没把编译和目标版本切换过去。打开你的Xamarin Android项目属性,找到“应用程序”标签页:

    • 把“Compile using Android version (Target Framework)”设置为Android 8.0 (API 26) 或更高版本
    • 确保“Target Android version (AndroidManifest.xml)”也对应设置为API26或以上
  • 修正代码中的枚举引用
    你代码里的JUSTIFICATION_MODE_INTER_WORD在Xamarin的绑定中是作为枚举值存在的,不是直接的常量。正确的写法应该是引用Android.Text.JustificationMode.InterWord:

    if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.O)
    {
        textview.SetJustificationMode(Android.Text.JustificationMode.InterWord);
    }
    

    另外要确保你的textview变量确实是Android.Widget.TextView类型,没有引用错其他命名空间下的TextView类。

  • 清理重建项目,清除VS缓存
    Visual Studio有时候会因为缓存问题导致API识别异常,试试这几步:

    • 右键解决方案,选择“清理解决方案”
    • 手动删除项目下的bin和obj文件夹
    • 重新生成解决方案
  • 检查Xamarin.Android的版本
    确保你使用的Xamarin.Android NuGet包版本是支持API26的(至少8.0.0.0及以上)。可以在NuGet包管理器里查看并更新到最新兼容版本。

内容的提问来源于stack exchange,提问作者Tek Mun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:32:16