
本發明屬于計算機技術領域,尤其涉及一種用戶界面生成方法及系統。
背景技術:
UI(User Interface,用戶界面)界面,也稱人機用戶界面,泛指用戶的操作用戶界面。
隨著用戶需求和顯示終端的多樣化,用戶對用戶界面的需求也越來越多樣化。不同用戶對同一用戶界面需求也可能會不一樣,如有些用戶希望在用戶界面中整合全部功能,而有些用戶卻只想在用戶界面整合部分想要的功能。
在現有技術中,一般將所有用戶對用戶界面功能的需求都實現,再根據具體用戶需求進行用戶界面的定制,直接生成用戶定制的用戶界面,但定制的用戶界面修改困難,必須由技術人員修改用戶界面程序代碼再重新生成用戶界面,才能滿足用戶新的需求,這樣會降低用戶界面使用的靈活性,增加技術人員的工作量,還會影響用戶的工作效率。
技術實現要素:
有鑒于此,本發明提供了一種用戶界面生成方法及系統,以解決現有技術中必須修改用戶界面程序代碼才能進行用戶界面修改,導致用戶界面使用的靈活性降低的問題。
第一方面,提供了一種用戶界面生成方法,包括:
讀取預設配置文件,并獲取配置文件中的配置信息;
根據配置信息確定并獲取用戶界面所需的業務元件;
在預設布局設置庫中,調用業務元件在用戶界面中的第一布局設置;
基于配置信息、第一布局設置以及業務元件,生成用戶界面。
第二方面,提供了一種用戶界面生成系統,包括:
讀取單元,用于讀取預設配置文件,并獲取配置文件中的配置信息;
第一獲取單元,用于根據配置信息確定并獲取用戶界面所需的業務元件;
調用單元,用于在預設布局設置庫中,調用業務元件在用戶界面中的第一布局設置;
生成單元,用于基于配置信息、第一布局設置以及業務元件,生成用戶界面。
在本發明中,使用配置文件來確定用戶界面生成所需的配置信息,并通過配置信息確定用戶界面所需的業務元件,調用預設布局設置庫中業務元件在用戶界面的第一布局設置,最后根據得到的配置信息、業務元件及其對應布局設置來生成所需的用戶界面。用戶在使用本發明的方法或系統生成用戶界面時,若需要對用戶界面進行修改,只需要用戶或技術人員配置用戶界面對應的配置文件,并調用預設布局設置庫中想要的第一布局設置即可,無需修改用戶界面的程序代碼,大大地減少了用戶界面修改的工作量及操作難度,使得普通的用戶也能做到對用戶界面的修改,滿足了不同用戶的個性化需求,使得用戶界面使用的靈活性得到了極大的提高。
附圖說明
為了更清楚地說明本發明的實施例中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明實施例1中用戶界面生成方法的一流程圖;
圖2是本發明實施例2中用戶界面生成方法的一流程圖;
圖3是本發明實施例3中用戶界面生成系統的一結構框圖。
具體實施方式
以下描述中,為了說明而不是為了限定,提出了諸如特定系統結構、技術之類的具體細節,以便透徹理解本發明。然而,本領域的技術人員應當清楚,在沒有這些具體細節的其它實施例中也可以實現本發明。在其它情況中,省略對眾所周知的系統、電路以及方法的詳細說明,以免不必要的細節妨礙本發明的描述。
本發明實施例提供了一種用戶界面生成方法及系統,其中,該用戶界面生成方法包括:讀取預設配置文件,并獲取配置文件中的配置信息;根據配置信息確定并獲取用戶界面所需的業務元件;在預設布局設置庫中,調用業務元件在用戶界面中的第一布局設置;基于配置信息、第一布局設置以及業務元件,生成用戶界面。
用戶在使用本發明實施例的方法或系統生成用戶界面時,若需要對用戶界面進行修改,只需要用戶或技術人員配置用戶界面對應的配置文件,并調用預設布局設置庫中想要的第一布局設置即可,使得普通的用戶也能做到對用戶界面的修改,滿足了不同用戶的個性化需求,使得用戶界面使用的靈活性得到了極大的提高。
為了說明本發明技術方案,下面通過具體實施例來進行說明。
實施例1
圖1示出了本發明實施例一提供的用戶界面生成方法的實現流程,詳述如下:
步驟S101,讀取預設配置文件,并獲取配置文件中的配置信息。
配置信息包括工作臺列表信息、工作視圖列表信息、工作臺配置信息、工作視圖配置信息、業務元件配置信息及業務元件關聯信息。
其中,工作臺列表信息中包含著用戶界面支持的所有工作臺的標識信息。
每個工作臺都有著一個相應的工作臺配置信息,工作臺配置信息里面包含了這個工作臺對應的工作視圖列表信息和工作視圖插頁。
在工作視圖列表信息中,包含著工作臺所能支持的所有工作視圖的標識信息,并以工作視圖導航菜單的形式顯示給用戶查看和選擇。
在工作視圖配置信息中,包含著該工作視圖支持的所有業務元件的業務元件配置信息,及業務元件之間的業務元件關聯信息。
業務元件配置信息中包含本次用戶界面生成所需的業務元件清單。
業務元件關聯信息包含著業務元件之間操作時的關聯觸發關系。
在本實施例中,為了使用戶能更加方便靈活的修改用戶界面,將工作臺列表信息、工作視圖列表信息、工作臺配置信息、工作視圖配置信息、業務元件配置信息及業務元件關聯信息等用戶界面生成時所需的配置信息,統一封裝在一個配置文件中,在修改用戶界面時,只需修改配置文件中相應的配置信息即可。
在步驟S101之前,技術人員會預設一個默認配置文件,在默認配置文件中,每一類配置信息都擁有一個默認參數。一般情況下,可以選擇直接采用默認配置文件來生成用戶界面,若需要進行用戶界面修改時,只需根據自己的需求,修改默認配置文件中配置信息對應的默認參數并進行保存,最后采用修改后的默認配置文件來生成用戶界面即可。
在用戶確定好配置文件進行用戶界面生成時,系統直接獲取保存好的配置文件,并讀取配置文件中的配置信息,以進行后續的用戶界面生成的步驟。
步驟S102,根據配置信息確定并獲取用戶界面所需的業務元件,業務元件是用戶界面中的單個功能模塊的封裝。
現有技術在進行用戶界面開發時,一般將用戶界面的功能模塊作為用戶界面的部分代碼,直接與用戶界面代碼一同編寫開發,這樣做存在著開發難度高、相同功能需重復開發及代碼復用度低的弊端。
為了解決這些弊端,在本實施例中,以單個功能模塊為單位,對用戶界面的功能模塊進行獨立開發,并將這些功能模塊封裝為一個個業務元件進行存儲。在用戶界面開發時,將用戶界面分解為許多個難易程度不同的業務元件,并將其分配給不同的技術人員來進行開發,大大減小了開發的難度。同時,許多用戶界面上具有相同的功能模塊,如常見的時間模塊和進度條模塊,通過將這些功能模塊封裝為業務元件,使得這些用戶界面中的這部分功能模塊,只需要開發一次,就可以在其它用戶界面中重復使用,避免相同功能模塊的重復開發,保證了這些功能模塊的一致性,即功能模塊在所有用戶界面中表現的行為和操作結果都是一致的,這極大的提高代碼的復用度。
本實施例中,系統在獲取到配置信息后,讀取配置信息中的業務元件配置信息,業務元件配置信息中包含本次用戶界面生成所需的業務元件清單,根據業務元件清單獲取對應的業務元件。
步驟S103,在預設布局設置庫中,調用業務元件在用戶界面中的第一布局設置。
在本實施例中,為了充分滿足用戶的個性化需求,提高用戶界面使用時的靈活性,在用戶對業務元件進行布局時,為用戶預設了一個預設布局設置庫,該預設布局設置庫包含了一些常用的業務元件的布局設置及用戶歷史保存的業務元件的布局設置。用戶可以通過輸入布局調用指令,直接調用預設布局設置庫中相應的布局設置,來進行業務元件布局,為了與后續的布局設置進行區分,本實施例中將直接從預設布局設置庫中調用的布局設置命名為第一布局設置。
作為步驟S103的一個具體實施例,優選地,在預設布局設置庫中預設一個默認布局設置,該默認布局設置既可以是常用的業務元件的布局設置中的一個,也可以是用戶歷史保存的業務元件的布局設置中的一個。系統在確定好用戶界面所需的業務元件之后,直接調用預設布局設置庫中的默認布局設置來作為第一布局設置。用戶若想更換第一布局設置為自己想要的布局設置,只需相應輸入布局調用指令至系統,系統在接收到布局調用指令后,調用預設布局設置庫中與布局調用指令相應的布局設置,作為第一布局設置來進行業務元件布局。
作為步驟S103的另一個具體實施例,優選地,設置預設布局設置庫中一個布局設置為默認布局設置,該默認布局設置既可以是常用的業務元件的布局設置中的一個,也可以是用戶歷史保存的業務元件的布局設置中的一個。系統在確定好用戶界面所需的業務元件之后,開始計時,若在預設時間內沒有接收到用戶輸入的布局調用指令,則將默認布局設置來作為第一布局設置,若在預設時間內接收到用戶輸入的布局調用指令,則調用預設布局設置庫中與布局調用指令相應的布局設置,作為第一布局設置來進行業務元件布局。其中,預設時間可以由技術人員根據實際需求進行設置。
步驟S104,基于配置信息、第一布局設置以及業務元件,生成用戶界面。
本實施例中,可以在獲取到配置信息后,由配置信息中工作臺配置信息及工作視圖配置信息確定好用戶界面中工作臺和工作視圖的相關配置,生成相應的工作臺及工作視圖,由配置信息中業務元件關聯信息確定好業務元件之間的關聯關系。最后在工作視圖中,按照第一布局設置生成業務元件,得到最終的用戶界面。其中,業務元件之間的關聯關系是指一個業務元件的操作會觸發另一個業務元件的相應操作的關系,如,在視頻播放器用戶界面中,用戶在調整進度條模塊時,相應的視頻顯示模塊會產生快進、快退或跳轉到指定的幀進行視頻播放。
作為步驟S101的一種實現方式,在讀取預設配置文件時,包括:
在高速緩存區中創建配置管理文件。
獲取配置文件中的配置信息,并拷貝至配置管理文件。
在現有技術中,一般會將配置文件存放在硬盤之中,但是系統對硬盤中的數據進行讀取時速度較慢,會對用戶界面的生成速度產生影響,為了進一步地提高用戶界面生成的速度,本實施例中優選地,將在高速緩存區中創建配置管理文件,并將配置文件中的配置信息拷貝至配置管理文件,利用高速緩存區能高速讀取數據的特性,來提高讀取配置信息時的速度。其中,高速緩存區包括但不限于隨機存取存儲器(random access memory,RAM)和內存高速緩沖區(cache)。
步驟S101中,在獲取配置文件中的配置信息時,既可以直接從配置文件中進行獲取,也可以從上述的配置管理文件中進行獲取,為了提高讀取配置信息的速度,本實施例優選采用從配置管理文件中進行配置信息的獲取。
實施例2
從配置管理文件中獲取配置信息時,為了更好的滿足不同用戶的個性化需求,實施例2在對用戶界面中工作臺和工作視圖生成時,包括:
步驟S201,讀取配置管理文件中的工作臺列表信息并顯示,以使得用戶能根據工作臺列表信息選擇所需的工作臺,并輸入相應的工作臺選擇指令。工作臺列表信息中包含著用戶界面支持的所有工作臺,用戶在查看顯示的工作臺列表信息后,根據自己的需求,點擊相應的工作臺即可。其中,每個工作臺對應著一個獨立的UI窗口,是用戶的操作平臺,包含著工作視圖導航菜單、工作視圖顯示插頁和創建的工作視圖。系統可以創建多個工作臺,不同的工作臺可以顯示在不同顯示屏幕上。
步驟S202,獲取用戶輸入的工作臺選擇指令,并根據工作臺選擇指令,讀取配置管理文件中相應的工作臺配置信息。在用戶點擊工作臺列表中需要生成的工作臺之后,系統會生成相應的工作臺選擇指令,并讀取相應的工作臺配置信息。
步驟S203,基于工作臺配置信息生成并顯示相應的工作臺。在讀取到工作臺配置信息后,系統會根據讀取到的工作臺配置信息生成相應的工作臺。
步驟S204,讀取配置信息中,與工作臺相應的工作視圖列表信息并顯示,以使得用戶能根據工作視圖列表信息選擇所需的工作視圖,并輸入相應的工作視圖選擇指令。工作臺在創建時,會根據工作臺配置信息,創建并顯示工作視圖列表信息和業務元件列表,工作視圖列表信息包含該工作臺支持的所有工作視圖,通過工作視圖列表信息用戶選擇可以打開對應的工作視圖。
步驟S205,獲取用戶在工作臺中輸入的工作視圖選擇指令,并根據工作視圖選擇指令,讀取配置管理文件中相應的工作視圖配置信息。
用戶在查看到工作視圖列表信息之后,可以根據需求選擇相應的工作視圖。系統會根據用戶的選擇生成相應的工作視圖選擇指令,并讀取配置信息中相應的工作視圖配置信息,生成相應的工作視圖。
步驟S102中,在根據配置信息確定并獲取用戶界面所需的業務元件時,包括:
根據配置信息中的業務元件配置信息,確定用戶界面所需的業務元件;
初始化預設業務元件庫,并從預設業務元件庫中獲取業務元件。
由于每個用戶界面都包含著非常多的業務元件,為了方便管理和存儲,本實施例中,將不同的業務元件放入不同的預設業務元件庫中進行存儲,即預設業務元件庫是一個或多個業務元件的集合,并將預設業務元件庫以動態鏈接庫的形式進行存儲,在需要使用業務元件時,直接調用預設業務元件庫中的相關業務元件即可。為了防止業務元件中存有歷史數據,對業務元件庫的正常運行產生干擾,在調用預設業務元件庫時,必須對其進行初始化操作。
作為本發明的一個具體實施例,在確定所需的業務元件之后,選擇相關的預設業務元件庫進行加載,并調用預設業務元件庫中的初始化接口對預設業務元件庫進行初始化,再獲取其中相應的業務元件。
作為本發明的另一個具體實施例,在步驟S104之后,還包括:
獲取操作場景信息,操作場景信息包括狀態數據及存儲數據。
將用戶界面的操作狀態設置為狀態數據對應的操作狀態,并將業務元件中的數據替換為存儲數據。
其中,狀態數據是指用戶界面的操作狀態的數據,由于對用戶界面的操作本質就是對用戶界面中的業務元件的操作,所以用戶界面的操作狀態也是指所有業務元件在用戶界面中的操作狀態的集合,如在視頻播放器界面中,顯示模塊的操作狀態包括播放、暫停和停止,列表模塊的操作狀態包括展開和隱藏,而視頻播放器界面的操作狀態,正是由這些功能模塊(即業務元件)的操作狀態共同構成的。存儲數據則是指在用戶界面中業務元件存儲的數據,如上述視頻播放器界面中,顯示模塊在播放狀態時對應的視頻播放時間數據,列表模塊的歷史播放記錄數據等。
用戶在使用用戶界面時,經常會出現一個任務分成多次操作完成,而每一次的操作(除了第一次)都需要進入前一次相同的用戶界面操作狀態,并需要使用前一次的業務元件數據的情況,為了方便用戶的使用,本實施例中,在生成用戶界面之后,系統直接獲取保存好的操作場景信息,并將用戶界面的操作狀態設置為狀態數據對應的操作狀態,并將業務元件中的數據替換為存儲數據。
作為本發明的另一個具體實施例,在步驟S104之后,還包括:
接收用戶輸入的布局修改指令。基于布局修改指令,修改用戶界面中業務元件的布局設置。
在本實施例中通過步驟S101、S102、S103及S104來生成用戶界面時,雖然可以通過修改配置文件和預設布局設置庫來生成不同的用戶界面,但當用戶還想對生成的用戶界面中業務元件的布局進行修改的時候,依然存在需要重新生成用戶界面的弊端,為了解決這個弊端,作為本發明的另一個實施例,用戶在系統已經生成用戶界面后,還可以對生成的用戶界面的業務元件進行修改,只需輸入所需的布局修改指令即可,如用戶可以通過直接拖動業務元件的方式來修改業務元件的布局。
作為本發明的另一個具體實施例,在步驟S104之后,還包括:
接收用戶輸入的布局設置保存指令。將用戶界面中業務元件的布局設置作為第一布局設置,并保存至預設布局設置庫。
步驟S103中的預設布局設置庫包含了一些常用的業務元件的布局設置及用戶歷史保存的業務元件的布局設置,在生成用戶界面后,用戶若想將當前的業務元件的布局設置保存以便以后使用,只需在系統中輸入布局設置保存指令,系統在接收到用戶輸入的布局設置保存指令之后,會給當前的業務元件的布局設置賦予一個唯一的ID,并將其作為第一布局設置保存至預設布局設置庫,以便下次調用。
在本實施例中,將用戶界面的配置信息存放在高區緩存區的配置管理文件中,使得配置信息的讀取更加快速,并根據用戶需求和配置信息依次生成工作臺、工作視圖及業務元件,最后根據用戶選擇的第一布局設置來對業務元件進行布局設置,生成用戶所需的用戶界面。而在用戶界面生成后,本實施例還可以將用戶界面恢復為前一次的操作場景,同時還允許用戶根據需求來修改業務元件的布局設置,并支持用戶將用戶界面中的業務元件布局保存至預設布局設置庫中。
在本實施例中,用戶可以修改配置文件中的配置信息,自主選擇所需的工作臺、工作視圖以及業務元件的布局設置,來實現對用戶界面進行修改,而無需對理會用戶界面的程序代碼,使得用戶對用戶界面使用的靈活性得到了極大的提高。
實施例2
對應于上文實施例用戶界面生成方法,圖3示出了本發明實施例提供的用戶界面生成系統的原理框圖。
參照圖3,該系統包括:
讀取單元31,用于讀取預設配置文件,并獲取配置文件中的配置信息。
第一獲取單元32,用于根據配置信息確定并獲取用戶界面所需的業務元件,業務元件是用戶界面中的單個功能模塊的封裝。
調用單元33,用于在預設布局設置庫中,調用業務元件在用戶界面中的第一布局設置。
生成單元34,用于基于配置信息、第一布局設置以及業務元件,生成用戶界面。
進一步地,讀取單元31,包括:
創建子單元,用于在高速緩存區中創建配置管理文件。
拷貝子單元,用于獲取配置文件中的配置信息,并拷貝至配置管理文件。
進一步地,讀取單元31,還包括:
配置信息包括工作臺列表信息、工作視圖列表信息、工作臺配置信息及工作視圖配置信息。
第一顯示子單元,用于讀取配置管理文件中的工作臺列表信息并顯示,以使得用戶能根據工作臺列表信息選擇所需的工作臺,并輸入相應的工作臺選擇指令。
第二讀取子單元,用于獲取用戶輸入的工作臺選擇指令,并根據工作臺選擇指令,讀取配置管理文件中相應的工作臺配置信息。
第二顯示子單元,用于基于工作臺配置信息生成并顯示相應的工作臺。
第三顯示子單元,用于讀取配置信息中,與工作臺相應的工作視圖列表信息并顯示,以使得用戶能根據工作視圖列表信息選擇所需的工作視圖,并輸入相應的工作視圖選擇指令。
第三讀取子單元,用于獲取用戶在工作臺中輸入的工作視圖選擇指令,并根據工作視圖選擇指令,讀取配置管理文件中相應的工作視圖配置信息。
進一步地,該系統,還包括:
第二獲取單元,用于獲取操作場景信息,操作場景信息包括狀態數據及存儲數據。
第一設置單元,用于將用戶界面的操作狀態設置為狀態數據對應的操作狀態,并將業務元件中的數據替換為存儲數據。
進一步地,該系統,還包括:
第一接收單元,用于接收用戶輸入的布局修改指令。
修改單元,用于基于布局修改指令,修改用戶界面中業務元件的布局設置。
本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的范圍。應理解,上述實施例中各步驟的序號的大小并不意味著執行順序的先后,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統、系統和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統、系統和方法,可以通過其它的方式實現。例如,以上所描述的系統實施例僅僅是示意性的,例如,單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,系統或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
功能如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍,均應包含在本發明的保護范圍之內。