观察者模式简介
观察者模式形象来说就是一个老板不停的询问员工任务是否完成,当任务完成后,老板再指派员工去做其他的事情。
简单代码例子
- 这里用Unity里面的动画来举例,在播放一个动画时,观察者会不停的询问这个动画是否播放完成,当播放完成后,观察者再命令播放下一个动画。
public class TeacjPnserver : MonoBehaviour
{
Animation player;
//播放动画
public void PlayAnimal()
{
timeCount = 0;
player.Play();
}
//检验动画是否播放完成
public bool IsFinish()
{
return player.isPlaying;
}
float timeCount = 0;
void Update()
{
if (Input.GetKey(KeyCode.A))
{
PlayAnimal();
}
if (IsFinish())
{
timeCount += Time.deltaTime;
if (timeCount > 0.5f)
{
Debug.Log("player particle");
}
}
}
}