在我的游戏引擎中,我想要像Unity3D一样拥有start()和update()回调方法。他们将形成' GameListener'接口,用户应该实现它们。如何在不添加任何侦听器的情况下实现这些回调? 例如,在libGDX中,您必须实现ApplicationListener接口才能访问render()和start()方法,而无需添加任何侦听器。
答案 0 :(得分:0)
//In class SomeTypeOfSender:
public delegate void SomeHandler(SomeTypeOfSender A, EventArgs e); //whatever
public event SomeHandler MyHandler;
像libGDX一样使用它:
public class Listener
{
public void Subscribe(SomeTypeOfSender A)
{
A.MyHandler += new SomeTypeOfSender.SomeHandler (DoSth);
}
private void DoSth(SomeTypeOfSender s, EventArgs e)
{
System.Console.WriteLine("HEARD IT");
}
}