xamarin - AndroidX 迁移错误 Android.Content.Res.Resources+NotFoundException: 'Resource ID #0x7f0b0047'
问题描述
我有MvvmCross
Xamarin Forms 项目。我右键单击 Android 项目并迁移到 AndroidX。现在,当我运行时,我得到了错误。请帮忙
Android.Content.Res.Resources+NotFoundException: '资源 ID #0x7f0b0047'
[Activity(Label = "MyApp", Icon = "@drawable/icon", MainLauncher = false, ScreenOrientation = ScreenOrientation.Portrait)]
public class MainActivity : MvxFormsAppCompatActivity
{
public static MainActivity Instanace;
protected override void OnCreate(Bundle bundle)
{
Instanace = this;
Xamarin.Essentials.Platform.Init(this, bundle);
base.Window.RequestFeature(WindowFeatures.ActionBar);
// Name of the MainActivity theme you had there before.
// Or you can use global::Android.Resource.Style.ThemeHoloLight
//base.SetTheme(Resource.Style.MainTheme);
base.OnCreate(bundle); *------------------Here I get error*
TabLayoutResource = Resource.Layout.tabs;
ToolbarResource = Resource.Layout.toolbar;
}
解决方案
我能够在我的应用程序中克服这个错误。它失败了FormsAppCompatActivity.OnCreate(Bundle savedInstanceState, ActivationFlags flags)
,什么时候ToolbarResource
没有设置。这导致以下代码运行:https ://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Platform.Android/AppCompat/FormsAppCompatActivity.cs#L235
事实证明,充气Resource.Layout.Toolbar
是有问题的,并导致您描述的错误。
解决方法是在调用之前ToolbarResource
分配(从您的资源中指定Resource.Layout
资源。MainActivity
base.OnCreate()
推荐阅读
- javascript - How to await user input with javascripts async/await syntax?
- python - Python: How to print all numbers except the multiples of 3
- javascript - 来自带有 FlatList 的 react-native-elements 的 SearchBar 只允许我一个一个地输入字符
- android - 添加搜索过滤器回收站视图后给出错误的位置
- javascript - React Ant Design 表格过滤不起作用
- python - 如何解决 Windows 上的 pygame 安装错误?
- python - 从 pandas 的行中删除特定模式
- angular - 如何让 Angular 9 在 Internet Explorer 上运行?
- python-3.x - 在使用 asyncio 时确定我的任务在哪个线程中运行
- docker - 我的 docker 容器的 crontab 似乎没有运行