專利名稱:多語言版本的界面自適應方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及界面切換技術,特別涉及一種多語言版本的界面自適應方法及系統(tǒng)。
背景技術:
傳統(tǒng)的實現(xiàn)多語言版本的技術方案主要有以下幾種方案一、制作多個不同語言的界面,同時生成多個數(shù)據(jù)包;方案二、固定每個界面的大小,在此前提下給界面上的每個控件預留足夠大的空間,也就是固定控件在界面上的位置和大小,切換界面語言后,將相應的信息顯示在相應控件的空間中;方案三、將所有信息都做成圖片,為每種語言都準備一套相應的圖片,切換界面語言,就更換相應的圖片。方案四、不考慮多行對齊,同一行中一個控件接一個控件的排列。上述的幾種技術中,方案一和方案三,明顯不利于多語言版本進行擴展,雖然可以解決界面布局美觀以及界面控件信息完全,在需要增加一種新的語言界面時,增加了很多工作量;方案二,由于語言的不同,造成在字體相同的條件下,不同的語言表示同一文字信息所占用的空間不同,從而當界面上每個控件的大小固定后,語言的不同則會使得界面空間的浪費或者控件的信息顯示不完全;方案四,由于沒有考慮行與行之間的對齊關系,造成界面不美觀。
發(fā)明內容
為了解決上述問題,本發(fā)明提供一種多語言版本的界面自適應方法及系統(tǒng)。一種多語言版本的界面自適應方法,包括 步驟一、獲取多語言版本的界面布局信息;
步驟二、根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;
步驟三、獲取需要顯示的語言版本的各個控件的語言信息,根據(jù)所述新控件包將該語言信息在所述界面上進行排版,然后顯示排版后的界面。一種多語言版本的界面自適應系統(tǒng),包括界面獲取單元,組合單元,顯示單元; 所述界面獲取單元,用于獲取多語言版本的界面布局信息;
所述組合單元,用于根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;
所述顯示單元,用于獲取需要顯示的語言版本的各個控件的語言信息,根據(jù)所述新控件包將該語言信息在所述界面上進行排版,然后顯示排版后的界面。與現(xiàn)有技術相比,本發(fā)明的技術通過首先獲取所需切換的語言版本的界面信息; 然后將各個控件進行組合生成新控件包,同時組合中的各個控件的布局關聯(lián)關系布局排版屬性添加進該新控件包;再獲取需要顯示的語言版本的語言信息根據(jù)新控件包的布局排版屬性進行自動排版后進行顯示。通過本發(fā)明的技術方案,在擴展新的語言版本時,只需要數(shù)據(jù)包中增加新的語言信息,在切換語言版本時,只需獲取該新的語言信息根據(jù)已有的控件包的布局排版屬性在界面上進行自動排版,然后顯示自動排版后的界面即可完成切換。
圖1是本發(fā)明多語言版本的界面自適應方法的流程圖; 圖2是實施例中的多語言版本的界面示意圖3是實施例中界面上的部分控件的編號示意圖; 圖4是實施例中的一種組合控件方式的示意圖; 圖5是本發(fā)明多語言版本的界面自適應系統(tǒng)的結構示意圖; 圖6是實施例中的系統(tǒng)結構示意圖。
具體實施例方式下面結合附圖和實施例對本發(fā)明的多語言版本的界面自適應方法作詳細描述。如圖1所示,圖1是本發(fā)明多語言版本的界面自適應方法的流程圖,包括 步驟一、獲取多語言版本的界面布局信息;該布局信息為美工設計的界面信息。步驟二、根據(jù)上述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;通過上述捆綁實現(xiàn)了控件的組合,同時相應組合的控件布局排版屬性也添加到該新控件包中。步驟三、在切換語言版本時,獲取需要顯示的語言版本的各個控件語言信息,在界面上將各個控件的語言信息根據(jù)上述新控件包進行在界面上進行自動排版,然后將自動排版后的界面進行顯示,即可啟動新的語言界面。為了更加清晰本發(fā)明的方法,下面對較佳實施例作更詳細的闡述。對于步驟二,優(yōu)選地,根據(jù)界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進該新控件包。對于上述通過捆綁實現(xiàn)了控件的組合,優(yōu)選地,包括
51、根據(jù)界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進該新控件包;
52、將步驟Sl中得到的控件包生成為新控件;
53、重復步驟Si、S2;將新控件與其它控件再進行組合。對于步驟三、由于不同語言表示相同信息時語言本身所占的空間不同,在顯示前, 進一步包括根據(jù)控件占用空間的大小來調整界面的大小,使得所有控件都能夠完全顯示。對于調整界面的大小的方法,由于所有控件中占用空間最大的控件決定是否所有控件能否完全被顯示,優(yōu)選地,根據(jù)顯示該占用空間最大的控件所需的最小空間調整界面的大小。
本實施例中的其它特征與上述實施例相同,在此不再贅述。下面結合附圖闡述本發(fā)明的一應用實例。請參閱圖2,圖2是多語言版本的界面示意圖,圖加是簡體中文版本的界面,圖2b 是英文版本的界面,圖2c是韓文版本的界面;從示意圖中可以看出,更換語言版本的界面, 各個控件之間的相對布局位置關系(該關系包括同行、長度相等、左對齊或右對齊、上下同時居中、上下分布或左右分布等)沒有改變,改變的是界面上語言信息及控件的大小,還有可能包括界面本身的大小,在進行語言版本切換時,為達到界面美觀,不同的控件需要實現(xiàn)上述的界面布局信息條件的約束。下面以圖加的簡體中文版本為例要擴展并切換至圖2b或圖2c的語言版本時,首先,獲取需要切換的多語言版本的圖加的界面信息。為了下文的敘述方便我們先給界面上的部分控件進行編號。如圖3所示,界面上的1、2、3、4、5、6、7是部分控件的編號,獲取的界面布局信息中包括
(1)控件1和控件2,控件3和控件4,控件5、控件6和7,分別處于不同的行;
(2)控件1和控件2組合,控件3和控件4組合,控件5,三者占用的空間基本相等(控件占用空間的大小由控件本身長度決定);
(3)控件1與控件3左對齊,控件2與控件4左對齊;
(4)控件1與控件3與控件5左對齊;
(5)控件6占用的空間與控件7占用的空間相等。然后根據(jù)上述控件之間的相對布局位置關系,將界面上的控件進行組合,對于組合的方式,可以根據(jù)本專利使用者實際情況設定,根據(jù)實際界面布局的信息將控件進行組合,例如,可以將同時左對齊的或右對齊的控件進行組合,可以將長度基本相等的控件進行組合,可以將相對位置固定的控件進行組合等。請參閱圖4,圖4為本實施例一種組合控件方式的示意圖。首先,控件1和控件3是在局部區(qū)域具有上下關系的控件,將控件1和控件3組合為新控件 H,同理,將控件2和控件4組合為新控件;控件6和控件7在局部區(qū)域具有左右關系,組合為新控件,在上述組合過程中,相應控件之間的相對布局位置關系封裝進該新控件的控件包,這樣就可以實現(xiàn)界面信息中的(3)和(5)的要求。
然后將上述組合得到的新控件zl、z2和再進行組合。優(yōu)選地,如下 首先,新控件H與具有左右關系的控件,將zl、z2組合為新控件4在上述組合過程中,相應地控件之間的相對布局位置關系封裝進該新控件的控件包,這樣可以實現(xiàn)界面信息中的(1)的要求。控件M和控件5具有上下關系,將控件 4和控件5組合為新控件,將控件和z5控件包進行存儲,在上述組合過程中,相應地攔件之間的相對布局位置關系封裝進邏新控件的控件包,這樣可以實現(xiàn)信息中的(2 )和(4 )的要求。經(jīng)過上述組合后,界面上只有控件23和z5。要擴展并切換至圖2b或圖2c的語言版本時,獲取該語言的語言信息和、力的控件包,將該語言信息根據(jù)相應在所屬的控件包內的布局排版屬性進行自動排版。由于控件5占用空間最大,所以根據(jù)控件5占用空間的大小來調整界面的大小,將經(jīng)過自動排版和調整的界面進行顯示,即可完成語言版本的切換。下面結合附圖和實施例對本發(fā)明的多語言版本的界面自適應系統(tǒng)作詳細描述。如圖5所示,圖5是本發(fā)明多語言版本的界面自適應系統(tǒng)的結構示意圖;包括界面獲取單元,組合排版單元,顯示單元;其原理是
界面獲取單元,用于獲取多語言版本的界面布局信息;該布局信息為美工設計的界面 fn息ο組合單元,用于根據(jù)上述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;同過捆綁實現(xiàn)控件的組合,同時相應的控件布局排版屬性也添加到該新控件包中。顯示單元,用于在切換語言版本時,獲取需要顯示的語言版本的各個控件語言信息,在界面上將各個控件的語言信息根據(jù)上述新控件包進行在界面上進行自動排版,然后將自動排版后的界面進行顯示。為了更加清晰本發(fā)明的系統(tǒng),下面闡述本發(fā)明系統(tǒng)的較佳實施例。請參閱圖6,圖6是本實施例的系統(tǒng)結構示意圖。對于組合單元,具體地,用于根據(jù)界面布局信息中控件之間的相對布局位置關系, 將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進該新控件包。優(yōu)選地,該組合單元進行組合的方式包括
51、根據(jù)界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進該新控件包;
52、將步驟Sl中得到的控件包生成為新控件;
53、重復步驟Si、S2;將新控件與其它控件再進行組合。對于顯示單元,進一步包括界面調整模塊;該界面調整模塊,用于根據(jù)控件占用空間調整界面的大小。優(yōu)選地,界面調整模塊用于獲取占用空間最大的控件,并根據(jù)顯示該控件所需的最小空間調整界面的大小。 本實施例中的其它特征與上述實施例相同,在此不再贅述。
以上所述的本發(fā)明實施方式,并不構成對本發(fā)明保護范圍的限定。任何在本發(fā)明的精神和原則之內所作的修改、等同替換和改進等,均應包含在本發(fā)明的權利要求保護范圍之內。
權利要求
1.一種多語言版本的界面自適應方法,其特征在于,包括步驟一、獲取多語言版本的界面布局信息;步驟二、根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;步驟三、獲取需要顯示的語言版本的各個控件的語言信息,根據(jù)所述新控件包將該語言信息在所述界面上進行排版,然后顯示排版后的界面。
2.根據(jù)權利要求1所述的方法,其特征在于,所述步驟二具體為根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進所述新控件包。
3.根據(jù)權利要求2所述的方法,其特征在于,所述步驟二進一步為S1、根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進所述新控件包;S2、將步驟Sl中得到的控件包生成為新控件;S3、重復步驟Si、S2。
4.根據(jù)權利要求1至3任一項所述的方法,其特征在于,所述步驟三進一步包括根據(jù)控件占用空間調整所述界面的大小。
5.根據(jù)權利要求4所述的方法,其特征在于,所述調整的步驟具體為獲取占用空間最大的控件,根據(jù)顯示該控件所需的最小空間調整所述界面的大小。
6.一種多語言版本的界面自適應系統(tǒng),其特征在于,包括界面獲取單元,組合單元, 顯示單元;所述界面獲取單元,用于獲取多語言版本的界面布局信息;所述組合單元,用于根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進所述新控件包;所述顯示單元,用于獲取需要顯示的語言版本的各個控件的語言信息,根據(jù)所述新控件包將該語言信息在所述界面上進行排版,然后顯示排版后的界面。
7.根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述組合單元,用于根據(jù)所述界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包的ID號進行捆綁,并生成新控件包,同時將相應捆綁控件之間的相對布局位置關系封裝進所述新控件包。
8.根據(jù)權利要求6或7所述的系統(tǒng),其特征在于,所述顯示單元,進一步包括界面調整模塊;所述界面調整模塊,用于根據(jù)控件占用空間調整所述界面的大小。
9.根據(jù)權利要求8所述的系統(tǒng),其特征在于,所述調整的方式為獲取占用空間最大的控件,根據(jù)顯示該控件所需的最小空間調整所述界面的大小。
全文摘要
一種多語言版本的界面自適應方法,包括步驟一、獲取多語言版本的界面布局信息;步驟二、根據(jù)界面布局信息中控件之間的相對布局位置關系,將界面上至少兩個控件的控件包進行捆綁生成新控件包,同時將相應捆綁控件之間的各個控件的布局排版屬性添加進新控件包;步驟三、獲取需要顯示的語言版本的各個控件的語言信息,根據(jù)所述新控件包將該語言信息在界面上進行排版,然后顯示排版后的界面。本發(fā)明還提供一種多語言版本的界面自適應系統(tǒng),通過本發(fā)明,在擴展新的語言版本時,只需要數(shù)據(jù)包中增加新的語言信息,在切換語言版本時,只需獲取該新的語言信息根據(jù)已有控件包的布局排版屬性進行自動排版,然后顯示界面即可。
文檔編號G06F9/44GK102207870SQ20111015204
公開日2011年10月5日 申請日期2011年6月8日 優(yōu)先權日2011年6月8日
發(fā)明者謝桂冠 申請人:廣東威創(chuàng)視訊科技股份有限公司