C# FindById始终返回null
Android类库上的函数C# FindById始终返回null,c#,xamarin.android,C#,Xamarin.android,Android类库上的函数FindById()总是返回null是否正常 我想创建一个包含一些活动的库,以便您可以在各种项目中使用。为此,我在OnCreate()方法中调用FindById()。但是,它总是返回null。我想我找到了错误 来自我的Android应用程序的Resource.Designer.cs文件生成我的Android类库的不同ids Resource.Designer.cs文件 如何修复它 Android类库Resource.designer.cs #杂注警告禁用1591 //-
FindById()
总是返回null是否正常
我想创建一个包含一些活动的库,以便您可以在各种项目中使用。为此,我在
OnCreate()
方法中调用FindById()
。但是,它总是返回null。我想我找到了错误
来自我的Android应用程序的Resource.Designer.cs文件生成我的Android类库的不同ids Resource.Designer.cs文件
如何修复它
Android类库Resource.designer.cs
#杂注警告禁用1591
//------------------------------------------------------------------------------
//
//这段代码是由一个工具生成的。
//运行时版本:4.0.30319.18033
//
//对此文件的更改可能会导致不正确的行为,如果
//重新生成代码。
//
//------------------------------------------------------------------------------
[汇编:Android.Runtime.ResourceDesignerAttribute(“Mono.Android.Plugins.Resource”,IsApplication=false)]
名称空间Mono.Android.Plugins
{
[System.CodeDom.Compiler.GeneratedCodeAttribute(“Xamarin.Android.Build.Tasks”,“1.0.0.0”)]
公共部分类资源
{
资源()
{
全局::Android.Runtime.ResourceIdManager.UpdateIdValues();
}
公共部分类属性
{
私有属性()
{
}
}
公共部分类可提取
{
//aapt资源值:0x7f020000
公共静态int ic_stat_disease=2130837504;
//aapt资源值:0x7f020001
公共静态int ic_stat_ic_stat_snooze=2130837505;
//aapt资源值:0x7f020002
公共静态int ic_stat_通知=2130837506;
//aapt资源值:0x7f020003
公共静态int ic_stat_snooze=2130837507;
//aapt资源值:0x7f020004
公共静态int单雄激素样增生=2130837508;
私人提款权()
{
}
}
公共部分类Id
{
//aapt资源值:0x7f060002
公共静态按钮=21301099650;
//aapt资源值:0x7f060001
公共静态int提醒内容=21301099649;
//aapt资源值:0x7f060000
公共静态标题=21301099648;
//aapt资源值:0x7f060003
公共静态int snooze_按钮=21301099651;
私人Id()
{
}
}
公共部分班级布局
{
//aapt资源值:0x7f030000
公共静态int单雄激素样增生=2130903040;
//aapt资源值:0x7f030001
公共静态int post_提醒=2130903041;
专用布局()
{
}
}
公共部分类字符串
{
//aapt资源值:0x7f040002
公共静态int Hello=2130968578;
//aapt资源值:0x7f040001
公共静态整数=2130968577;
//aapt资源值:0x7f040000
公共静态int snooze=2130968576;
私有字符串()
{
}
}
公共部分类样式
{
//aapt资源值:0x7f050000
公共静态int Mono_Android_Theme_Splash=2131034112;
私人风格()
{
}
}
}
}
#pragma警告恢复1591
Android应用程序资源.designer.cs
#杂注警告禁用1591
//------------------------------------------------------------------------------
//
//这段代码是由一个工具生成的。
//运行时版本:4.0.30319.18033
//
//对此文件的更改可能会导致不正确的行为,如果
//重新生成代码。
//
//------------------------------------------------------------------------------
[assembly:Android.Runtime.ResourceDesignerAttribute(“AndroidApplication1.Resource”,IsApplication=true)]
命名空间AndroidApplication1
{
[System.CodeDom.Compiler.GeneratedCodeAttribute(“Xamarin.Android.Build.Tasks”,“1.0.0.0”)]
公共部分类资源
{
资源()
{
全局::Android.Runtime.ResourceIdManager.UpdateIdValues();
}
公共静态void UpdateIdValues()
{
Mono.Android.Plugins.Resource.Drawable.ic_stat_disease=AndroidApplication1.Resource.Drawable.ic_stat_disease;
Mono.Android.Plugins.Resource.Drawable.ic_stat_ic_stat_snooze=AndroidApplication1.Resource.Drawable.ic_stat_ic_stat_snooze;
Mono.Android.Plugins.Resource.Drawable.ic_stat_notification=AndroidApplication1.Resource.Drawable.ic_stat_notification;
Mono.Android.Plugins.Resource.Drawable.ic_stat_snooze=Android应用程序1.Resource.Drawable.ic_stat_snooze;
Mono.Android.Plugins.Resource.Drawable.monoandroidsplash=AndroidApplication1.Resource.Drawable.monoandroidsplash;
Mono.Android.Plugins.Resource.Id.disease_按钮=Android应用程序1.Resource.Id.disease_按钮;
Mono.Android.Plugins.Resource.Id.remention_content=Android应用程序1.Resource.Id.remention_content;
Mono.Android.Plugins.Resource.Id.remention_title=Android应用程序1.Resource.Id.remention_title;
Mono.Android.Plugins.Resource.Id.snooze_按钮=Android应用程序1.Resource.Id.snooze_按钮;
Mono.Android.Plugins.Resource.Layout.monoandroidsplash=AndroidApplication1.Resource.Layout.monoandroidsplash;
Mono.Android.Plugins.Resource.Layout.post_提醒=Android应用程序1.Resource.Layout.post_提醒;
Mono.Android.Plugins.Resource.String.Hello=AndroidApplication1.Resource.String.Hello;
Mono.Android.Plugi
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18033
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
[assembly: Android.Runtime.ResourceDesignerAttribute("Mono.Android.Plugins.Resource", IsApplication=false)]
namespace Mono.Android.Plugins
{
[System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")]
public partial class Resource
{
Resource()
{
global::Android.Runtime.ResourceIdManager.UpdateIdValues ();
}
public partial class Attribute
{
private Attribute()
{
}
}
public partial class Drawable
{
// aapt resource value: 0x7f020000
public static int ic_stat_dismiss = 2130837504;
// aapt resource value: 0x7f020001
public static int ic_stat_ic_stat_snooze = 2130837505;
// aapt resource value: 0x7f020002
public static int ic_stat_notification = 2130837506;
// aapt resource value: 0x7f020003
public static int ic_stat_snooze = 2130837507;
// aapt resource value: 0x7f020004
public static int monoandroidsplash = 2130837508;
private Drawable()
{
}
}
public partial class Id
{
// aapt resource value: 0x7f060002
public static int dismiss_button = 2131099650;
// aapt resource value: 0x7f060001
public static int reminder_content = 2131099649;
// aapt resource value: 0x7f060000
public static int reminder_title = 2131099648;
// aapt resource value: 0x7f060003
public static int snooze_button = 2131099651;
private Id()
{
}
}
public partial class Layout
{
// aapt resource value: 0x7f030000
public static int monoandroidsplash = 2130903040;
// aapt resource value: 0x7f030001
public static int post_reminder = 2130903041;
private Layout()
{
}
}
public partial class String
{
// aapt resource value: 0x7f040002
public static int Hello = 2130968578;
// aapt resource value: 0x7f040001
public static int dismiss = 2130968577;
// aapt resource value: 0x7f040000
public static int snooze = 2130968576;
private String()
{
}
}
public partial class Style
{
// aapt resource value: 0x7f050000
public static int Mono_Android_Theme_Splash = 2131034112;
private Style()
{
}
}
}
}
#pragma warning restore 1591
#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18033
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
[assembly: Android.Runtime.ResourceDesignerAttribute("AndroidApplication1.Resource", IsApplication=true)]
namespace AndroidApplication1
{
[System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")]
public partial class Resource
{
Resource()
{
global::Android.Runtime.ResourceIdManager.UpdateIdValues ();
}
public static void UpdateIdValues()
{
Mono.Android.Plugins.Resource.Drawable.ic_stat_dismiss = AndroidApplication1.Resource.Drawable.ic_stat_dismiss;
Mono.Android.Plugins.Resource.Drawable.ic_stat_ic_stat_snooze = AndroidApplication1.Resource.Drawable.ic_stat_ic_stat_snooze;
Mono.Android.Plugins.Resource.Drawable.ic_stat_notification = AndroidApplication1.Resource.Drawable.ic_stat_notification;
Mono.Android.Plugins.Resource.Drawable.ic_stat_snooze = AndroidApplication1.Resource.Drawable.ic_stat_snooze;
Mono.Android.Plugins.Resource.Drawable.monoandroidsplash = AndroidApplication1.Resource.Drawable.monoandroidsplash;
Mono.Android.Plugins.Resource.Id.dismiss_button = AndroidApplication1.Resource.Id.dismiss_button;
Mono.Android.Plugins.Resource.Id.reminder_content = AndroidApplication1.Resource.Id.reminder_content;
Mono.Android.Plugins.Resource.Id.reminder_title = AndroidApplication1.Resource.Id.reminder_title;
Mono.Android.Plugins.Resource.Id.snooze_button = AndroidApplication1.Resource.Id.snooze_button;
Mono.Android.Plugins.Resource.Layout.monoandroidsplash = AndroidApplication1.Resource.Layout.monoandroidsplash;
Mono.Android.Plugins.Resource.Layout.post_reminder = AndroidApplication1.Resource.Layout.post_reminder;
Mono.Android.Plugins.Resource.String.Hello = AndroidApplication1.Resource.String.Hello;
Mono.Android.Plugins.Resource.String.dismiss = AndroidApplication1.Resource.String.dismiss;
Mono.Android.Plugins.Resource.String.snooze = AndroidApplication1.Resource.String.snooze;
Mono.Android.Plugins.Resource.Style.Mono_Android_Theme_Splash = AndroidApplication1.Resource.Style.Mono_Android_Theme_Splash;
}
public partial class Attribute
{
private Attribute()
{
}
}
public partial class Drawable
{
// aapt resource value: 0x7f020000
public const int ic_stat_dismiss = 2130837504;
// aapt resource value: 0x7f020001
public const int ic_stat_ic_stat_snooze = 2130837505;
// aapt resource value: 0x7f020002
public const int ic_stat_notification = 2130837506;
// aapt resource value: 0x7f020003
public const int ic_stat_snooze = 2130837507;
// aapt resource value: 0x7f020004
public const int Icon = 2130837508;
// aapt resource value: 0x7f020005
public const int monoandroidsplash = 2130837509;
private Drawable()
{
}
}
public partial class Id
{
// aapt resource value: 0x7f060000
public const int button = 2131099648;
// aapt resource value: 0x7f060003
public const int dismiss_button = 2131099651;
// aapt resource value: 0x7f060002
public const int reminder_content = 2131099650;
// aapt resource value: 0x7f060001
public const int reminder_title = 2131099649;
// aapt resource value: 0x7f060004
public const int snooze_button = 2131099652;
private Id()
{
}
}
public partial class Layout
{
// aapt resource value: 0x7f030000
public const int Main = 2130903040;
// aapt resource value: 0x7f030001
public const int monoandroidsplash = 2130903041;
// aapt resource value: 0x7f030002
public const int post_reminder = 2130903042;
private Layout()
{
}
}
public partial class String
{
// aapt resource value: 0x7f040003
public const int ApplicationName = 2130968579;
// aapt resource value: 0x7f040002
public const int Hello = 2130968578;
// aapt resource value: 0x7f040001
public const int dismiss = 2130968577;
// aapt resource value: 0x7f040000
public const int snooze = 2130968576;
private String()
{
}
}
public partial class Style
{
// aapt resource value: 0x7f050000
public const int Mono_Android_Theme_Splash = 2131034112;
private Style()
{
}
}
}
}
#pragma warning restore 1591
using System;
using System.Linq;
using System.Reflection;
using Android.Runtime;
namespace MonoDroid.ActionBar.Library
{
//From http://forums.xamarin.com/discussion/comment/5816/#Comment_5816
public static class ResourceIdManager
{
static bool _idInitialized;
public static void UpdateIdValues ()
{
if (_idInitialized)
return;
var eass = Assembly.GetExecutingAssembly ();
Func<Assembly,Type> f = ass =>
ass.GetCustomAttributes (typeof (ResourceDesignerAttribute), true)
.Select (ca => ca as ResourceDesignerAttribute)
.Where (ca => ca != null && ca.IsApplication)
.Select (ca => ass.GetType (ca.FullName))
.Where (ty => ty != null)
.FirstOrDefault ();
var t = f (eass);
if (t == null)
t = AppDomain.CurrentDomain.GetAssemblies ().Select (ass => f (ass)).Where (ty => ty != null).FirstOrDefault ();
if (t != null)
t.GetMethod ("UpdateIdValues").Invoke (null, new object [0]);
_idInitialized = true;
}
}
}