【发布时间】:2014-08-13 05:24:25
【问题描述】:
我是移动应用开发的新手。我正在使用 Xamarin 开发 Android 应用程序。在 OnCreate 方法的 hello world 应用程序中,我看到以下代码:
Button button = FindViewById<Button>(Resource.Id.MyButton);
所以我尝试以同样的方式创建自己的按钮。我在设计器中创建按钮,并在 OnCreate 方法中放入以下行:
Button myOwnBtn = FindViewById<Button>(Resource.Id.MyOwnBtn);
这给了我一个错误,即没有 MyOwnBtn。然后我在看 Id 类的代码,看到有这样一行:
public const int MyButton=2123344112;
如果我把这条线放在那里:
public const int MyOwnBtn=2123344113;
一切正常。但据我了解,它应该是自动生成的,否则为每个控件设置一个唯一编号会有点困难。
谁能告诉我我做错了什么? FindViewById() 是如何工作的?
【问题讨论】:
-
Resource.Id.MyOwnBtn 是创建新按钮时必须为按钮定义的 ID (MyOwnBtn)。
-
如果找不到按钮,这就是为什么您没有使用声明了该按钮的布局设置内容视图的原因,因此它也无法显示、交互等。使用 SetContentView (资源.布局.我的布局);使用在 MyLayout XML 文件中创建的 MyOwnBtn。
标签: c# android xamarin xamarin-studio