我在尝试dot42的第一步。
我定义了这样一个按钮:
<Button android:id="@+string/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Senden"
android:onClick="sendMessage"/>
我想我现在可以在mainActivity类中定义一个方法,如下所示:
[Activity]
public class MainActivity : Activity
{
protected override void OnCreate(Bundle savedInstance)
{
base.OnCreate(savedInstance);
SetContentView(R.Layouts.MainLayout);
}
public void sendMessage(View view)
{
}
}
但不幸的是,当我点击那个按钮时,我得到了一个异常。
您可以找到有关dot42的信息here
最佳答案
我收到了Dot42支持部门对此的答复:
可以通过向sendMessage方法添加[EventHandler]属性(来自dot42.EventHandlerAttribute)来解决此问题,方法如下:
[EventHandler]
public void sendMessage(View view)
{
Toast.MakeText(this, "Button pressed", Toast.LENGTH_LONG).Show();
}
这样可以确保sendmage方法不会被重命名并包含在apk中。
默认情况下,dot42将尝试删除尽可能多的代码,因为sendmessage没有被引用(从代码中),所以它将删除它。添加属性可防止出现这种情况。
关于c# - 用dot42触发事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15012377/