我有一个简单的启动Android应用程序,如下所示:
(以下所有文字代码)
代码永远不会遇到第一个断点。如果我在this.SetContentView(...)
调用上设置断点,它将会命中(但仍然没有达到调用btnStart行)。此外,当我点击按钮时,根本没有任何事情发生。也没有例外。
我做错了什么?
编辑:我更进了一步,在收到btnStart
之后立即添加了这行代码:
btnStart.Text = "Abc";
它也没有执行。我意识到,在SetContentView
之后,代码不再执行了!
MainActivity.cs的代码:
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
this.SetContentView (Resource.Layout.Main);
var btnStart = this.FindViewById<Button>(Resource.Id.btnStart);
btnStart.Click += (sender, e) =>
{
var txtContent = this.FindViewById<EditText>(Resource.Id.txtContent);
var content = txtContent.Text;
txtContent.Text = "Hello " + content;
};
}
布局main.axml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:text="Start"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnStart" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/txtContent" />
</LinearLayout>
答案 0 :(得分:0)
您是否意识到axml文件是main.axml,并将contentview设置为this.SetContentView(Resource.Layout.Main)。尝试将axml文件名更改为Main.axml。然后它应该运行