本發(fā)明的實(shí)施方式總體上涉及車(chē)機(jī)系統(tǒng)開(kāi)發(fā),更具體地,涉及一種用于生成車(chē)機(jī)圖形界面組件工具包的方法、裝置和存儲(chǔ)介質(zhì)。
背景技術(shù):
1、當(dāng)前車(chē)機(jī)系統(tǒng)圖形開(kāi)發(fā)需要面向多種顯示分辨率需求,需要多方協(xié)同合作,圖形定義文件的輸出和理解全靠人工處理,需要花費(fèi)許多時(shí)間;項(xiàng)目后期,如果遇到修改,由于同一組件用于多個(gè)界面,會(huì)進(jìn)行大量重復(fù)勞動(dòng);因此,迫切需要一種減少人工處理和溝通誤差的方法,以提高開(kāi)發(fā)效率。
2、專(zhuān)利文獻(xiàn)cn112506500a公開(kāi)了提供一種可視化控件創(chuàng)建方法及裝置,該方法包括:基于tdgui-engine圖形系統(tǒng)和圖形界面開(kāi)發(fā)工具,將控件封裝為對(duì)象,通過(guò)函數(shù)注冊(cè)實(shí)現(xiàn)自定義控件的外觀風(fēng)格顯示和事件響應(yīng),通過(guò)注冊(cè)關(guān)鍵字設(shè)置和顯示控件屬性,并設(shè)置控件的布局風(fēng)格和注冊(cè)控件的回調(diào)事件,包含控件的元素如何在工具中展示和已經(jīng)顯示的控件如何保存為配置文件,讓將要實(shí)現(xiàn)的控件按照用戶自定義的方法在圖形界面開(kāi)發(fā)工具中呈現(xiàn)出來(lái),圖形界面開(kāi)發(fā)工具加載自定義的控件動(dòng)態(tài)鏈接庫(kù),自動(dòng)加載控件的圖標(biāo),創(chuàng)建和編輯該控件后,并按照通過(guò)函數(shù)注冊(cè)的規(guī)則將界面中的自定義控件保存到配置文件對(duì)應(yīng)的節(jié)點(diǎn)。通過(guò)該方案提高控件代碼的復(fù)用性,方便用戶界面程序開(kāi)發(fā)。但本方案之下,仍需大量的人工處理動(dòng)作,且無(wú)法實(shí)現(xiàn)減少設(shè)計(jì)端與開(kāi)發(fā)端的溝通誤差。
技術(shù)實(shí)現(xiàn)思路
1、為了解決現(xiàn)有技術(shù)中的上述問(wèn)題,在第一方面,本發(fā)明的實(shí)施方式提供了一種用于生成車(chē)機(jī)圖形界面組件工具包的方法,所述方法包括:在車(chē)機(jī)系統(tǒng)交互流程文件中遍歷系統(tǒng)中的控件,生成控件清單,其中,所述控件清單包括系統(tǒng)中每個(gè)控件的不同控件狀態(tài)以及不同控件狀態(tài)下的顯示參數(shù);根據(jù)所述控件清單中不同控件狀態(tài)與不同控件狀態(tài)下的顯示參數(shù)之間的對(duì)應(yīng)關(guān)系,生成視覺(jué)規(guī)范;在系統(tǒng)圖形界面元素包括的圖形素材中確定所述控件清單中的每個(gè)控件的不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材;根據(jù)所述視覺(jué)規(guī)范和不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件,生成視覺(jué)組件庫(kù);確定所述控件清單中的控件的不同控件狀態(tài)的交互規(guī)范;生成所述控件清單中的控件的不同控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼,將所述交互邏輯代碼與所述交互規(guī)范相關(guān)聯(lián)地存儲(chǔ)至代碼庫(kù);根據(jù)所述視覺(jué)組件庫(kù)和所述代碼庫(kù),將所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件與該控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼進(jìn)行融合,生成所述車(chē)機(jī)圖形界面組件工具包。
2、在一些實(shí)施方式中,在生成視覺(jué)組件庫(kù)之后,所述方法還包括:根據(jù)所述視覺(jué)規(guī)范,對(duì)所述視覺(jué)組件庫(kù)中的視覺(jué)組件進(jìn)行準(zhǔn)確性測(cè)試。
3、在一些實(shí)施方式中,將所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件與該控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼進(jìn)行融合包括:通過(guò)編碼映射將視覺(jué)組件與交互邏輯代碼進(jìn)行融合。
4、在一些實(shí)施方式中,所述顯示參數(shù)包括顏色、尺寸、透明度中的一種或多種。
5、在一些實(shí)施方式中,所述交互規(guī)范包括在不同控件狀態(tài)下各個(gè)控件的位置及各個(gè)控件之間的相對(duì)位置關(guān)系。
6、在一些實(shí)施方式中,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件包括:根據(jù)所述視覺(jué)規(guī)范,為每個(gè)控件的不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材定義屬性代碼;將所述屬性代碼嵌入到所述視覺(jué)組件中。
7、在一些實(shí)施方式中,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件包括:根據(jù)所述視覺(jué)規(guī)范中不同控件狀態(tài)下的顯示參數(shù),生成所述圖形素材在不同狀態(tài)下的顯示圖形;將所述顯示圖形組合成為所述視覺(jué)組件。
8、在第二方面,本發(fā)明的實(shí)施方式提出了一種用于生成車(chē)機(jī)圖形界面組件工具包的裝置,所述裝置包括:控件清單生成模塊,配置用于在車(chē)機(jī)系統(tǒng)交互流程文件中遍歷系統(tǒng)中的控件,生成控件清單,其中,所述控件清單包括系統(tǒng)中每個(gè)控件的不同控件狀態(tài)以及不同控件狀態(tài)下的顯示參數(shù);視覺(jué)規(guī)范生成模塊,配置用于根據(jù)所述控件清單中不同控件狀態(tài)與不同控件狀態(tài)下的顯示參數(shù)之間的對(duì)應(yīng)關(guān)系,生成視覺(jué)規(guī)范;圖形素材確定模塊,配置用于在系統(tǒng)圖形界面元素包括的圖形素材中確定所述控件清單中的每個(gè)控件的不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材;視覺(jué)組件庫(kù)生成模塊,配置用于根據(jù)所述視覺(jué)規(guī)范和不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件,生成視覺(jué)組件庫(kù);交互規(guī)范確定模塊,配置用于確定所述控件清單中的控件的不同控件狀態(tài)的交互規(guī)范;代碼生成模塊,配置用于生成所述控件清單中的控件的不同控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼,將所述交互邏輯代碼與所述交互規(guī)范相關(guān)聯(lián)地存儲(chǔ)至代碼庫(kù);融合模塊,配置用于根據(jù)所述視覺(jué)組件庫(kù)和所述代碼庫(kù),將所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件與該控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼進(jìn)行融合,生成所述車(chē)機(jī)圖形界面組件工具包。
9、在一些實(shí)施方式中,所述裝置還包括:視覺(jué)組件測(cè)試模塊,配置用于在生成視覺(jué)組件庫(kù)之后,根據(jù)所述視覺(jué)規(guī)范,對(duì)所述視覺(jué)組件庫(kù)中的視覺(jué)組件進(jìn)行準(zhǔn)確性測(cè)試。
10、在一些實(shí)施方式中,所述融合模塊進(jìn)一步配置用于:通過(guò)編碼映射將視覺(jué)組件與交互邏輯代碼進(jìn)行融合。
11、在一些實(shí)施方式中,所述顯示參數(shù)包括顏色、尺寸、透明度中的一種或多種。
12、在一些實(shí)施方式中,所述交互規(guī)范包括在不同控件狀態(tài)下各個(gè)控件的位置及各個(gè)控件之間的相對(duì)位置關(guān)系。
13、在一些實(shí)施方式中,所述視覺(jué)組件庫(kù)生成模塊進(jìn)一步配置用于:根據(jù)所述視覺(jué)規(guī)范,為每個(gè)控件的不同控件狀態(tài)分別對(duì)應(yīng)的圖形素材定義屬性代碼;將所述屬性代碼嵌入到所述視覺(jué)組件中。
14、在一些實(shí)施方式中,所述視覺(jué)組件庫(kù)生成模塊進(jìn)一步配置用于:根據(jù)所述視覺(jué)規(guī)范中不同控件狀態(tài)下的顯示參數(shù),生成所述圖形素材在不同狀態(tài)下的顯示圖形;將所述顯示圖形組合成為所述視覺(jué)組件。
15、在第三方面,本發(fā)明的實(shí)施方式提出了一種存儲(chǔ)介質(zhì),存儲(chǔ)有計(jì)算機(jī)可讀程序代碼,當(dāng)所述程序代碼由處理器運(yùn)行時(shí),執(zhí)行根據(jù)上述任何實(shí)施方式所述的方法。
16、本發(fā)明的實(shí)施方式根據(jù)系統(tǒng)交互流程文件及圖形界面元素,生成視覺(jué)組件庫(kù);確定各個(gè)控件不同狀態(tài)對(duì)應(yīng)的交互規(guī)范,生成各個(gè)控件不同狀態(tài)對(duì)應(yīng)的交互規(guī)范對(duì)應(yīng)的邏輯代碼,生成代碼庫(kù);根據(jù)所述視覺(jué)組件庫(kù)和所述代碼庫(kù),通過(guò)編碼映射及代碼編寫(xiě)的方式形成最終的組件sdk(工具包),用以在進(jìn)行車(chē)機(jī)圖形界面開(kāi)發(fā)時(shí),根據(jù)控件的不同狀態(tài)調(diào)用不同的視覺(jué)組件以設(shè)置控件對(duì)應(yīng)的顏色、尺寸、位置、透明度等參數(shù),以及調(diào)用不同的代碼庫(kù)設(shè)置控件的位置及其與其他控件之間的相對(duì)位置關(guān)系,最終確定控件整體狀態(tài)。
17、與現(xiàn)有技術(shù)相比,本發(fā)明的實(shí)施方式所生成的組件工具可代替口頭溝通和手動(dòng)復(fù)制粘貼,提高了圖形界面開(kāi)發(fā)效率。解決了現(xiàn)有技術(shù)中存在信息重復(fù)輸入、使用大量口頭溝通的問(wèn)題。
18、本發(fā)明以原子化設(shè)計(jì)理論為基礎(chǔ),基于視覺(jué)規(guī)范,構(gòu)建大量通用的組件,實(shí)現(xiàn)了一種基于原子化設(shè)計(jì)理論的車(chē)機(jī)圖形界面開(kāi)發(fā)方案。通過(guò)編碼形成設(shè)計(jì)與實(shí)現(xiàn)的映射關(guān)系,有利于實(shí)現(xiàn)設(shè)計(jì)端和開(kāi)發(fā)端的信息同步,并沉淀成組件規(guī)范庫(kù)共同維護(hù)。
1.一種用于生成車(chē)機(jī)圖形界面組件工具包的方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在生成視覺(jué)組件庫(kù)之后,所述方法還包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,將所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件與該控件狀態(tài)的交互規(guī)范對(duì)應(yīng)的交互邏輯代碼進(jìn)行融合包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述顯示參數(shù)包括顏色、尺寸、透明度中的一種或多種。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述交互規(guī)范包括在不同控件狀態(tài)下各個(gè)控件的位置及各個(gè)控件之間的相對(duì)位置關(guān)系。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,構(gòu)建所述控件清單中的控件的不同控件狀態(tài)的視覺(jué)組件包括:
8.一種用于生成車(chē)機(jī)圖形界面組件工具包的裝置,其特征在于,所述裝置包括:
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括:
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述融合模塊進(jìn)一步配置用于:通過(guò)編碼映射將視覺(jué)組件與交互邏輯代碼進(jìn)行融合。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述顯示參數(shù)包括顏色、尺寸、透明度中的一種或多種。
12.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述交互規(guī)范包括在不同控件狀態(tài)下各個(gè)控件的位置及各個(gè)控件之間的相對(duì)位置關(guān)系。
13.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述視覺(jué)組件庫(kù)生成模塊進(jìn)一步配置用于:
14.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述視覺(jué)組件庫(kù)生成模塊進(jìn)一步配置用于:
15.一種存儲(chǔ)介質(zhì),存儲(chǔ)有計(jì)算機(jī)可讀程序代碼,當(dāng)所述程序代碼由處理器運(yùn)行時(shí),執(zhí)行根據(jù)權(quán)利要求1-7中任一項(xiàng)所述的方法。