在PureeMVC中,在哪里放置控制视图的键盘侦听器的正确位置?
-
24-10-2019 - |
题
我获得了一些PureEMVC的经验,我想使用键盘命令来控制我的视图。该应用程序的其余部分不需要知道此观点在做什么。
我应该将它们直接放在视图中,还是应该在其他地方放置,并在按下键时使用通知通知视图?
谢谢!
解决方案
正如您所说,您有两种选择 - 将一些听众放入View.mxml课程中,或者将听众放入某些通用类。
1 -ST-这似乎是正常的方法,无需进一步的解释,每个程序员都会做同样的事情。
2-nd方法更有趣。如果您有很多视图,请聆听键盘事件,您将开始使用类似
public class EnterButtonPressed extends SimpleCommand
{
function execute(...):void
{
//do something with the model, and then notify the view
}
}
但是在添加了更多应该听的观点之后 Enter
钥匙你们的班级会这样结束
public class EnterButtonPressed extends SimpleCommand {
function execute(...):void
{
switch(viewType)
{
case view1:
//do something with the model, and then notify view1
break;
case view2:
//do something with the model, and then notify view2
break;
case view3:
//do something with the model, and then notify view3
break;
case view4:
//do something with the model, and then notify view4
break;
...
}
}
如果您听许多键盘事件,那似乎很糟糕。但是,如果您对设计模式很熟悉,则可以使用 状态模式.
当我遇到许多不同的视图状态聆听许多事件时,这对我的最新项目有很大帮助。
我也建议您看看 伴侣 框架,就像pureemvc +数据绑定 + flex事件。
不隶属于 StackOverflow