CN109960550A - 一种界面管理的方法及终端 - Google Patents
一种界面管理的方法及终端 Download PDFInfo
- Publication number
- CN109960550A CN109960550A CN201711417139.6A CN201711417139A CN109960550A CN 109960550 A CN109960550 A CN 109960550A CN 201711417139 A CN201711417139 A CN 201711417139A CN 109960550 A CN109960550 A CN 109960550A
- Authority
- CN
- China
- Prior art keywords
- interfaces windows
- interface
- request
- receiving
- caching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种界面管理的方法及终端,实时监控界面的状态,并根据界面的状态执行对应的操作:若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存,使得界面管理的通用性高,实现开发过程中对界面的统一管理,避免界面使用的混乱或错误,效率高,节约成本。
Description
技术领域
本发明涉及界面管理领域,尤其涉及一种界面管理的方法及终端。
背景技术
在利用Unity引擎进行游戏、应用的开发过程中,比如RPG游戏、MMO游戏及虚拟现实等中,会涉及到界面的管理。
而一个完整的应用通常由无数个界面组成,此时界面的管理显得尤为重要。在Unity引擎中,通常使用UGUI***来进行开发应用,但是其并没有集成一个通用的界面管理的模板,致使每次使用Unity中自带的UGUI***开发产品的同时,都会针对该产品进行一系列的开发适应,比如在开发不同的应用时,都要单独为该应用的特殊性编写界面管理。由于各个应用界面管理的独立性,这就很容易导致在界面切换时出现混乱或者错误,或者由于对UGUI***的不规范使用,导致错误的出现。而出现界面管理混乱或错误时,就需要花费很多的人力物力才能解决。
发明内容
本发明所要解决的技术问题是:提供一种界面管理的方法及终端,提高界面管理的通用性,避免界面使用的混乱。
为了解决上述技术问题,本发明采用的一种技术方案为:
一种界面管理的方法,包括步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种界面管理的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
本发明的有益效果在于:通过实时监控界面的状态,并根据界面的状态执行对应的操作实现开发过程中对界面的统一管理,使得界面管理的通用性高,避免界面使用的混乱或错误,效率高,节约成本。
附图说明
图1为本发明实施例的一种界面管理的方法流程图;
图2为本发明实施例的一种界面管理的终端的机构示意图;
标号说明:
1、界面管理的终端;2、存储器;3、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:通过实时监控界面的状态,并根据界面的状态执行对应的操作实现开发过程中对界面的统一管理。
请参照图1,一种界面管理的方法,包括步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
由上述描述可知,本发明的有益效果在于:通过实时监控界面的状态,并根据界面的状态执行对应的操作实现开发过程中对界面的统一管理,使得界面管理的通用性高,避免界面使用的混乱或错误,效率高,节约成本。
进一步的,所述若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口具体包括:
若接收到打开一个界面窗口的请求,根据所述请求中包含的界面名,读取命名空间的所有脚本,判断是否存在与所述界面名匹配的界面窗口。
由上述描述可知,基于请求中包含的界面名,通过读取命名空间的所有脚步,来判断是否存在与所述界面名匹配的界面窗口,简单快捷。
进一步的,还包括:
若接收到对显示的界面窗口的修改请求,基于类继承导入对应的窗体脚本,根据所述窗体脚本对所述界面窗口进行修改。
由上述描述可知,通过类继承的思想提供一些必要的界面操作功能,只要继承相应的类就可以调用所述类里的所有功能来进行单个界面的修改,从而实现对界面的统一管理。
进一步的,还包括:
若接收到对显示的界面窗口添加一功能的请求,从预先设置的公共功能类中查找相应的功能,并对所述功能进行调用。
由上述描述可知,设置一公共功能类,在所述类中放入一些通用的功能,若需要在一界面窗口添加一功能,则只需要直接从所述公共功能类中调用即可,为开发提供便利。
进一步的,还包括:
设置一对象池管理器,所述对象池管理器中存储有键值及对应的元素;
若接收到对显示的界面窗口添加一元素的请求,根据所述请求中包含的元素的键值,从所述对象池管理器中查找对应的元素,将所述元素添加到所述界面窗口,并将所述元素从所述对象池管理器中移除。
由上述描述可知,将经常用到的元素,通过元素与键值关联性地保存于设置的对象池管理器,但需要使用时,从所述对象池管理器中基于键值索引要用到的元素,方便快捷,利于性能优化提升。
请参照图2,一种界面管理的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
由上述描述可知,本发明的有益效果在于:通过实时监控界面的状态,并根据界面的状态执行对应的操作实现开发过程中对界面的统一管理,使得界面管理的通用性高,避免界面使用的混乱或错误,效率高,节约成本。
进一步的,所述若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口具体包括:
若接收到打开一个界面窗口的请求,根据所述请求中包含的界面名,读取命名空间的所有脚本,判断是否存在与所述界面名匹配的界面窗口。
由上述描述可知,基于请求中包含的界面名,通过读取命名空间的所有脚步,来判断是否存在与所述界面名匹配的界面窗口,简单快捷。
进一步的,还包括:
若接收到对显示的界面窗口的修改请求,基于类继承导入对应的窗体脚本,根据所述窗体脚本对所述界面窗口进行修改。
由上述描述可知,通过类继承的思想提供一些必要的界面操作功能,只要继承相应的类就可以调用所述类里的所有功能来进行单个界面的修改,从而实现对界面的统一管理。
进一步的,还包括:
若接收到对显示的界面窗口添加一功能的请求,从预先设置的公共功能类中查找相应的功能,并对所述功能进行调用。
由上述描述可知,设置一公共功能类,在所述类中放入一些通用的功能,若需要在一界面窗口添加一功能,则只需要直接从所述公共功能类中调用即可,为开发提供便利。
进一步的,还包括:
设置一对象池管理器,所述对象池管理器中存储有键值及对应的元素;
若接收到对显示的界面窗口添加一元素的请求,根据所述请求中包含的元素的键值,从所述对象池管理器中查找对应的元素,将所述元素添加到所述界面窗口,并将所述元素从所述对象池管理器中移除。
由上述描述可知,将经常用到的元素,通过元素与键值关联性地保存于设置的对象池管理器,但需要使用时,从所述对象池管理器中基于键值索引要用到的元素,方便快捷,利于性能优化提升。
实施例一
请参照图1,一种界面管理的方法,包括步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
具体的,可以定义一个界面窗体管理总类UIManager,实时掌握所有界面的状态信息,包括显示、隐藏、删除,以此来管理开发中出现的界面混乱问题;
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
其中,所述若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口具体包括:
若接收到打开一个界面窗口的请求,根据所述请求中包含的界面名,读取命名空间的所有脚本,判断是否存在与所述界面名匹配的界面窗口;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存;
若接收到对显示的界面窗口的修改请求,基于类继承导入对应的窗体脚本,根据所述窗体脚本对所述界面窗口进行修改;
可以定义一个界面基类UIForms,只要继承这个基类的类都可以调用基类里的所有功能来进行单个界面的修改;
可以定义一个全局定义类UISystemDefine,在这个类中包含了界面的打开类型、关闭类型、窗体类型、委托定义、全局变量、缓存类型等枚举和类属性,从而方便在UI管理框架的编写中调用;
若接收到对显示的界面窗口添加一功能的请求,从预先设置的公共功能类中查找相应的功能,并对所述功能进行调用;
可以定义一个公共功能类UICommonUtility,在这个类里面放入一些通用的功能,比如需要找到一个界面中的一个元素物体功能,可以调用所述公共功能类中写好的功能,根据这个元素的名字进行界面的层级索引返回需要的物体功能;
设置一对象池管理器,所述对象池管理器中存储有键值及对应的元素;
若接收到对显示的界面窗口添加一元素的请求,根据所述请求中包含的元素的键值,从所述对象池管理器中查找对应的元素,将所述元素添加到所述界面窗口,并将所述元素从所述对象池管理器中移除;
移除表示对象池管理器中已经不存在所述元素,这些元素与界面是一一对应的关系,允许在管理器中存在多个相同的所述元素,其他界面如果和所述元素对应的界面相同,则查找是否还有这样的元素,如果没有,则证明当前所述的元素索引已经被占用完,无法进行重复占用,在没有的情况下,会重新生成一个与所述界面对应的元素;
可以定义一个对象池管理类ObjectPoolManager,通过C#里的字典dictionary进行性能优化提升,将需要经常使用的元素,通过键值和元素本身做关联性的保存,当需要使用时就从这个对象池管理器中根据键值索引要用到的元素,并将这个元素从对象池管理器中移除。
实施例二
请参照图2,一种界面管理的终端1,包括存储器2、处理器3以及存储在所述存储器2上并可在所述处理器3上运行的计算机程序,所述处理器3执行所述计算机程序时实现实施例一中的步骤。
综上所述,本发明提供的一种界面管理的方法及终端,通过实时监控界面的状态,并根据界面的状态执行对应的操作,设置界面基类,通过类继承的方式导入对应的窗体脚本,实现对界面窗口的修改,设置一公共功能类,可以直接调用所述公共功能类中的功能,并设置一对象池管理类,直接根据键值从所述对象池管理类中索引对于的元素,使得界面管理的通用性高,实现开发过程中对界面的统一管理,避免界面使用的混乱或错误,效率高,节约成本。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种界面管理的方法,其特征在于,包括步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
2.根据权利要求1所述的一种界面管理的方法,其特征在于,
所述若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口具体包括:
若接收到打开一个界面窗口的请求,根据所述请求中包含的界面名,读取命名空间的所有脚本,判断是否存在与所述界面名匹配的界面窗口。
3.根据权利要求1所述的一种界面管理的方法,其特征在于,还包括:
若接收到对显示的界面窗口的修改请求,基于类继承导入对应的窗体脚本,根据所述窗体脚本对所述界面窗口进行修改。
4.根据权利要求1所述的一种界面管理的方法,其特征在于,还包括:
若接收到对显示的界面窗口添加一功能的请求,从预先设置的公共功能类中查找相应的功能,并对所述功能进行调用。
5.根据权利要求1所述的一种界面管理的方法,其特征在于,还包括:
设置一对象池管理器,所述对象池管理器中存储有键值及对应的元素;
若接收到对显示的界面窗口添加一元素的请求,根据所述请求中包含的元素的键值,从所述对象池管理器中查找对应的元素,将所述元素添加到所述界面窗口,并将所述元素从所述对象池管理器中移除。
6.一种界面管理的终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
实时监控界面的状态,并根据界面的状态执行对应的操作:
若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口,若是,则从缓存中取出所述界面窗口并显示,否则,创建所述界面窗口并显示;
若接收到关闭一个界面窗口的请求,隐藏所述界面窗口,并判断缓存中是否存在所述界面窗口,若否,将所述界面窗口加入所述缓存。
7.根据权利要求6所述的一种界面管理的终端,其特征在于,
所述若接收到打开一个界面窗口的请求,判断缓存中是否存在所述界面窗口具体包括:
若接收到打开一个界面窗口的请求,根据所述请求中包含的界面名,读取命名空间的所有脚本,判断是否存在与所述界面名匹配的界面窗口。
8.根据权利要求6所述的一种界面管理的终端,其特征在于,还包括:
若接收到对显示的界面窗口的修改请求,基于类继承导入对应的窗体脚本,根据所述窗体脚本对所述界面窗口进行修改。
9.根据权利要求6所述的一种界面管理的终端,其特征在于,还包括:
若接收到对显示的界面窗口添加一功能的请求,从预先设置的公共功能类中查找相应的功能,并对所述功能进行调用。
10.根据权利要求6所述的一种界面管理的终端,其特征在于,还包括:
设置一对象池管理器,所述对象池管理器中存储有键值及对应的元素;
若接收到对显示的界面窗口添加一元素的请求,根据所述请求中包含的元素的键值,从所述对象池管理器中查找对应的元素,将所述元素添加到所述界面窗口,并将所述元素从所述对象池管理器中移除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711417139.6A CN109960550A (zh) | 2017-12-25 | 2017-12-25 | 一种界面管理的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711417139.6A CN109960550A (zh) | 2017-12-25 | 2017-12-25 | 一种界面管理的方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109960550A true CN109960550A (zh) | 2019-07-02 |
Family
ID=67020571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711417139.6A Pending CN109960550A (zh) | 2017-12-25 | 2017-12-25 | 一种界面管理的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109960550A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098233A (zh) * | 2009-12-11 | 2011-06-15 | 阿里巴巴集团控股有限公司 | 即时通讯软件中通讯窗口的控制方法及控制*** |
CN102479355A (zh) * | 2010-11-30 | 2012-05-30 | 金蝶软件(中国)有限公司 | 一种实现业务单据加载的方法、装置及终端 |
CN106126268A (zh) * | 2016-08-18 | 2016-11-16 | 福建天泉教育科技有限公司 | 一种窗口创建方法及*** |
-
2017
- 2017-12-25 CN CN201711417139.6A patent/CN109960550A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098233A (zh) * | 2009-12-11 | 2011-06-15 | 阿里巴巴集团控股有限公司 | 即时通讯软件中通讯窗口的控制方法及控制*** |
CN102479355A (zh) * | 2010-11-30 | 2012-05-30 | 金蝶软件(中国)有限公司 | 一种实现业务单据加载的方法、装置及终端 |
CN106126268A (zh) * | 2016-08-18 | 2016-11-16 | 福建天泉教育科技有限公司 | 一种窗口创建方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MacDonald et al. | Pro ASP. NET 4 in VB 2010 | |
CN108293081A (zh) | 通过用户界面事件的程序重放深度链接到移动应用状态 | |
CN107273369B (zh) | 一种表数据修改方法和装置 | |
WO2019227708A1 (zh) | 测试案例的在线调试装置、方法及计算机可读存储介质 | |
CN104866416B (zh) | 实现应用程序性能分析的方法和装置 | |
CN103678506B (zh) | 在浏览器中加载应用程序快捷方式的方法、装置和浏览器 | |
CN108363566A (zh) | 一种项目开发过程中文件配置方法、智能终端及存储介质 | |
CN104050080A (zh) | 用户态调试linux内核的方法及*** | |
CN110045956A (zh) | 组件的配置方法、装置、设备及可读存储介质 | |
CN104503778A (zh) | 一种应用程序的安装方法和装置 | |
CN108958873B (zh) | 状态栏沉浸式效果的配置方法、装置、介质和计算机设备 | |
WO2016003850A1 (en) | Rule-based activation of behaviors in an extensible software application | |
CN108279905B (zh) | 一种组件中引入库文件的方法及装置 | |
CN105630545B (zh) | 浏览器启动方法及装置 | |
CN109960550A (zh) | 一种界面管理的方法及终端 | |
CN110895473B (zh) | 一种基于安卓移动设备的自启动保活***及方法 | |
JP4836412B2 (ja) | グラフィカル・ユーザ・インタフェースを生成する方法および装置 | |
CN111385661B (zh) | 语音控制全屏播放的方法、装置、终端及存储介质 | |
CN106126198B (zh) | 在移动端加载pc端应用页面的方法及装置 | |
CN105574195B (zh) | 判断数据库是否应下线回收的方法及装置 | |
CN103699418A (zh) | 一种检索外部sd卡的方法及装置 | |
CN107506299B (zh) | 一种代码分析方法及终端设备 | |
US9779132B1 (en) | Predictive information discovery engine | |
CN110018813A (zh) | 一种Toast设计方法、存储介质、电子设备及*** | |
CN112988139A (zh) | 事件处理文件的开发方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |