我正在尝试使用 Android API 的 Resources.GetIdentifier() 按名称获取布局资源的 int 资源 ID,但它返回 0。我使用的是 c#/monodroid/Xamarin,但使用的是常规 java Android我怀疑知识也会适用。这是我的代码:
int resId = Resources.GetIdentifier(typeName, "layout", _activity.PackageName);
其中 typeName = "FrmMain",在我的项目中我有文件“Resources/Layout/FrmMain.axml”。有什么想法吗?
最佳答案
这是旧的,但对于每个遇到这个问题的人来说,我认为这是因为资源名称应该是小写的,所以:
int resId = Resources.GetIdentifier("FrmMain", "layout", _activity.PackageName);
不起作用,但是:
int resId = Resources.GetIdentifier("frmmain", nameof(Resource.Layout).ToLower(), _activity.PackageName);
应该可以
关于android - Resources.GetIdentifier() 为布局返回 0 (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20354312/