7、AXF控制逻辑类,
7.1AXF入口控制逻辑类
我把入口逻辑类ActFirstActivity称和后面的主控类分开介绍是为了让大家清析初始和控制两个概念,其实这两个类是可以合并的。它们的功能是有重复的,但是在AXF中这两个概念是非常重要的。
ActFirstActivity类里面只有两个大的对象,AXF主控类和Bundle对象。我们主要讲Bundle的初始值设置。入口逻辑类中需要设置三个初始信息,下一页名称、是否允许编辑、JSON数据。
下一页名称,系统默认为/assets/目录下的MXL文件,AXF支持同一页面中展示多个AXFXML内容,多个页面用竖线隔开,例如“AXF001|AXF002“,加载的页面按下一页名称中的先后顺序显示。
是否允许编辑属性是一个非常重要的对象,如果设置为TRUE则页面控件置为灰色,并显示为不可编辑的状态。设置为FALSE时控件状态为正常编辑状态。
装入初始的数据信息,AXF以JSON字符串的格式装入初始信息。其中JSON的属性名为页面当中定义的组件名称,两者对应后当页面加载过程中AXF将数据注入到对应的页面组件。
其中特别声明的一点的是当JSONS中存在returnfield属性时,它的属性值为页面组件名称,所有出现有这个属性当中的页面组件名称在上面“isreturn”的值为真时,仍然可以编辑。
"{returnfield:AXF001|AXF002|AXF003,cardName:中国人}";
以上示例中如果是否允许编辑属性的值为TRUE,那么所有页面中只有名称为“AXF001|AXF002|AXF003”这三个控件是可以编辑的,其它都置为灰色并不可编辑。
AXF使用表单的上一页、下一页属性控制页面的流转,目前尚不支持动态的流转方式,如果之后再深入的对这个项目做修改或有需要的时候会考虑做这个功能。第二个属性是应用到某些特别的场景,例如有些页面初始的值是只读的,不允许用户修改的,但其中一些又是可以修改的,那么就需要对每一个页面控件做以上的设置。初始数据的设置适应的场景一般是在数据修改和还原的时候,AXF支持所有控件的数据还原,这一点是很多应用程序的难题,因为有很多的条件和限制,数据还原过程中会出现不完整, 非常复杂的情况,在AXF中实现就变得非常的容易自然。