Android系統下實現等比例布局的方法及系統與流程
2023-10-10 07:23:44 1
本發明涉及圖像處理的
技術領域:
,特別是涉及一種android系統下實現等比例布局的方法及系統。
背景技術:
:android是一種基於linux的自由及開放原始碼的作業系統,主要應用於行動裝置,如智慧型手機和平板電腦等智能終端。現有技術中,對於基於android系統的各種智能終端,其採用的屏幕尺寸、屏幕解析度密度不盡相同。因此,對於應用開發者而言,開發一款app需要考慮在各種智能終端上做對應的適配的展現,並一一適配,作出相應調整。這無疑增加了應用開發者的工作量,且操作繁瑣。技術實現要素:鑑於以上所述現有技術的缺點,本發明的目的在於提供一種android系統下實現等比例布局的方法及系統,能夠基於多種解析度、多種尺寸的智能終端,實現等比例布局。為實現上述目的及其他相關目的,本發明提供一種android系統下實現等比例布局的方法,包括以下步驟:基於預設尺寸的基準顯示界面,生成一布局文件;所述基準顯示界面設置在基於android系統的基準智能終端上;基於所述基準顯示界面,設計一基準圖案,獲取所述基準圖案的尺寸參數;基於基準顯示界面與目標顯示界面的尺寸關係,生成目標顯示界面中目標圖案的尺寸參數;所述目標顯示界面設置在基於android系統的目標智能終端上,且所述目標圖案為所述基準圖案對應的等比例圖案;基於所述布局文件和所述目標圖案的尺寸參數構建所述目標智能終端的顯示界面。於本發明一實施例中,所述智能終端包括智慧型手機、平板電腦和pda。於本發明一實施例中,根據基準顯示界面與目標顯示界面的尺寸比等於基準圖案與目標圖案的尺寸比,生成目標顯示界面中目標圖案的尺寸參數。於本發明一實施例中,所述尺寸參數以dp為單位。同時,本發明還提供一種android系統下實現等比例布局的系統,包括布局文件生成模塊、尺寸參數獲取模塊、尺寸參數生成模塊和構建模塊;所述布局文件生成模塊用於基於預設尺寸的基準顯示界面,生成一布局文件;所述基準顯示界面設置在基於android系統的基準智能終端上;所述尺寸參數獲取模塊用於基於所述基準顯示界面,設計一基準圖案,獲取所述基準圖案的尺寸參數;所述尺寸參數生成模塊用於基於基準顯示界面與目標顯示界面的尺寸關係,生成目標顯示界面中目標圖案的尺寸參數;所述目標顯示界面設置在基於android系統的目標智能終端上,且所述目標圖案為所述基準圖案對應的等比例圖案;所述構建模塊用於基於所述布局文件和所述目標圖案的尺寸參數構建所述目標智能終端的顯示界面。於本發明一實施例中,所述智能終端包括智慧型手機、平板電腦和pda。於本發明一實施例中,所述尺寸參數生成模塊根據基準顯示界面與目標顯示界面的尺寸比等於基準圖案與目標圖案的尺寸比,生成目標顯示界面中目標圖案的尺寸參數。於本發明一實施例中,所述尺寸參數以dp為單位。如上所述,本發明的android系統下實現等比例布局的方法及系統,具有以下有益效果:(1)只需一個簡單的布局文件,即可基於多種解析度、多種尺寸的智能終端,實現等比例布局;(2)簡化了流程,大大減少了工作量。附圖說明圖1顯示為相同dp尺寸的按鈕在不同尺寸的智能終端上的顯示效果示意圖;圖2顯示為本發明的android系統下實現等比例布局的方法於一實施例的流程圖;圖3顯示為本發明的android系統下實現等比例布局的系統於一實施例的結構示意圖。元件標號說明1布局文件生成模塊2尺寸參數獲取模塊3尺寸參數生成模塊4構建模塊具體實施方式以下通過特定的具體實例說明本發明的實施方式,本領域技術人員可由本說明書所揭露的內容輕易地了解本發明的其他優點與功效。本發明還可以通過另外不同的具體實施方式加以實施或應用,本說明書中的各項細節也可以基於不同觀點與應用,在沒有背離本發明的精神下進行各種修飾或改變。需說明的是,在不衝突的情況下,以下實施例及實施例中的特徵可以相互組合。需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發明的基本構想,遂圖式中僅顯示與本發明中有關的組件而非按照實際實施時的組件數目、形狀及尺寸繪製,其實際實施時各組件的型態、數量及比例可為一種隨意的改變,且其組件布局型態也可能更為複雜。為了實現android系統下的等比例布局,首先簡單介紹一下android系統中常用的度量單位:(1)圖像解析度(pixelsperinch,ppi)ppi表示圖像中每英寸所包含的像素數目。(2)像素密度(dotsperinch,dpi)dpi表示每英寸所包含的像素點數,即像素密度。(3)像素(pixel,px)px表示電子屏幕上組成一幅圖畫或照片的最基本單元。(4)設備獨立像素(densityindependentpixels,dp)其中,dp和px的換算公式為:dp*ppi/160=px。以160ppi屏幕為標準,則1dp=1px。(5)sp(scale-independentpixel)sp表示android系統中所採用字體的大小單位。sp和dp很類似,但唯一的區別是,android系統允許用戶自定義文字尺寸大小,如小、正常、大、超大等等。當文字尺寸是「正常」時,1sp=1dp=0.00625英寸,而當文字尺寸是「大」或「超大」時,1sp>1dp=0.00625英寸。針對不同的屏幕大小,所採用的像素密度包括低像素密度(ldpi)、中像素密度(mdpi)、高像素密度(hdpi)、超高像素密度(xhdpi)和超超高像素密度(xxhdpi),具體如表1所示。表1、各種像素密度參數像素密度ldpimdpihdpixhdpixxhdpi密度值120160240320480代表解析度240x320320x480480x800720x12801080x1920在android系統的實際開發應用中,通常使用dp和sp來設計用戶界面(userinterface,ui)ui布局。其中,對於相同dp數值,對應的實際佔用的屏幕尺寸是一樣的。假定需要設計一個尺寸為160dpx80dp的按鈕,則該按鈕在不同智能終端上展現出的比例就不一致,如圖1所示,無法滿足等比例布局的需求。如圖2所示,於一實施例中,本發明的android系統下實現等比例布局的方法包括以下步驟:步驟s1、基於預設尺寸的基準顯示界面,生成一布局文件;所述基準顯示界面設置在基於android系統的基準智能終端上。需要說明的是,本發明中所涉及的智能終端包括並不限於智慧型手機、平板電腦、pda,以及其他具有數據處理功能的終端設備。通常,智能終端是指具有獨立的作業系統,可以由用戶自行安裝軟體、遊戲等第三方服務商提供的程序,通過此類程序來不斷對手持設備的功能進行擴充,並可以通過移動通訊網絡來實現無線網絡接入的這樣一類終端設備。在android系統中,可以為不同顯示界面寬度的智能終端設置各自的布局文件(layout),也可以為各個顯示界面寬度的智能終端設置各自的參數配置。具體地,布局文件存放在res/layout/$layoutfile$.xml中;參數設置存放在res/values/dimens.xml中。步驟s2、基於所述基準顯示界面,設計一基準圖案,獲取該基準圖案的尺寸參數。在本發明中,要實現等比例布局,首先需要設定一基準圖案,以通過該基準圖案來實現目標顯示界面下的等比例布局。具體地,基於預設尺寸的基準顯示界面設計一基準圖案,並得到該基準圖案在該基準顯示界面上的尺寸參數。其中,尺寸參數為顯示界面的寬度和高度中的較小值。對於不同顯示界面寬度的智能終端的參數設置,存放在res/values-swdp/dimens.xml中。其中,sw為smallwidth的縮寫。當顯示界面的最小寬度都大於dp時,顯示界面就會自動到帶swdp後綴的資源文件裡去尋找相關資源文件。其中,最小寬度是指顯示界面寬高的較小值。其中,尺寸參數以dp為單位。步驟s3、基於基準顯示界面與目標顯示界面的尺寸關係,生成目標顯示界面中目標圖案的尺寸參數;所述目標顯示界面設置在基於android系統的目標智能終端上,且所述目標圖案為所述基準圖案對應的等比例圖案。具體地,基準顯示界面與目標顯示界面的尺寸比,等於基準圖案與目標圖案的尺寸比。通過上述參數對應關係,即可實現不同尺寸的顯示界面下,同一圖案的等比例顯示。例如,若在sw160dp中,尺寸參數是20dp,那麼在sw320dp中,尺寸參數就是40dp。這是因為,20dp*320/160=40dp。優選地,通過一個自動化轉換工具,實現基準圖案的尺寸參數到目標圖案的尺寸參數的自動化轉換。步驟s4、基於所述布局文件和所述目標圖案的尺寸參數構建所述目標智能終端的顯示界面。具體地,由於不同的智能終端的顯示界面對應的布局文件是可以共用的,差別僅僅在於參數設置。故在本發明中,只需設計一次布局文件,通過不同的參數設置實現不同尺寸的智能終端下同一圖案的等比例布局。優選地,可以將所構建的目標智能終端的顯示界面打包成生成apk,並在真機上運行,以測試本發明的android系統下實現等比例布局的方法的效果。.如圖2所示,於一實施例中,本發明的android系統下實現等比例布局的系統包括布局文件生成模塊1、尺寸參數獲取模塊2、尺寸參數生成模塊3和構建模塊4。布局文件生成模塊1用於基於預設尺寸的基準顯示界面,生成一布局文件;所述基準顯示界面設置在基於android系統的基準智能終端上。需要說明的是,本發明中所涉及的智能終端包括並不限於智慧型手機、平板電腦、pda,以及其他具有數據處理功能的終端設備。通常,智能終端是指具有獨立的作業系統,可以由用戶自行安裝軟體、遊戲等第三方服務商提供的程序,通過此類程序來不斷對手持設備的功能進行擴充,並可以通過移動通訊網絡來實現無線網絡接入的這樣一類終端設備。在android系統中,可以為不同顯示界面寬度的智能終端設置各自的布局文件(layout),也可以為各個顯示界面寬度的智能終端設置各自的參數配置。具體地,布局文件存放在res/layout/$layoutfile$.xml中;參數設置存放在res/values/dimens.xml中。尺寸參數獲取模塊2用於基於所述基準顯示界面,設計一基準圖案,獲取該基準圖案的尺寸參數。在本發明中,要實現等比例布局,首先需要設定一基準圖案,以通過該基準圖案來實現目標顯示界面下的等比例布局。具體地,基於預設尺寸的基準顯示界面設計一基準圖案,並得到該基準圖案在該基準顯示界面上的尺寸參數。其中,尺寸參數為顯示界面的寬度和高度中的較小值。對於不同顯示界面寬度的智能終端的參數設置,存放在res/values-swdp/dimens.xml中。其中,sw為smallwidth的縮寫。當顯示界面的最小寬度都大於dp時,顯示界面就會自動到帶swdp後綴的資源文件裡去尋找相關資源文件。其中,最小寬度是指顯示界面寬高的較小值。其中,尺寸參數以dp為單位。尺寸參數生成模塊3與尺寸參數獲取模塊相連,用於基於基準顯示界面與目標顯示界面的尺寸關係,生成目標顯示界面中目標圖案的尺寸參數;所述目標顯示界面設置在基於android系統的目標智能終端上,且所述目標圖案為所述基準圖案對應的等比例圖案。具體地,基準顯示界面與目標顯示界面的尺寸比,等於基準圖案與目標圖案的尺寸比。通過上述參數對應關係,即可實現不同尺寸的顯示界面下,同一圖案的等比例顯示。例如,若在sw160dp中,尺寸參數是20dp,那麼在sw320dp中,尺寸參數就是40dp。這是因為,20dp*320/160=40dp。優選地,通過一個自動化轉換工具,實現基準圖案的尺寸參數到目標圖案的尺寸參數的自動化轉換。構建模塊4與布局文件生成模塊1和尺寸參數生成模塊3相連,用於基於所述布局文件和所述目標圖案的尺寸參數構建所述目標智能終端的顯示界面。具體地,由於不同的智能終端的顯示界面對應的布局文件是可以共用的,差別僅僅在於參數設置。故在本發明中,只需設計一次布局文件,通過不同的參數設置實現不同尺寸的智能終端下同一圖案的等比例布局。優選地,可以將所構建的目標智能終端的顯示界面打包成生成apk,並在真機上運行,以測試本發明的android系統下實現等比例布局的方法的效果。綜上所述,本發明的android系統下實現等比例布局的方法及系統只需一個簡單的布局文件,即可基於多種解析度、多種尺寸的智能終端,實現等比例布局;簡化了流程,大大減少了工作量。所以,本發明有效克服了現有技術中的種種缺點而具高度產業利用價值。上述實施例僅例示性說明本發明的原理及其功效,而非用於限制本發明。任何熟悉此技術的人士皆可在不違背本發明的精神及範疇下,對上述實施例進行修飾或改變。因此,舉凡所屬
技術領域:
中具有通常知識者在未脫離本發明所揭示的精神與技術思想下所完成的一切等效修飾或改變,仍應由本發明的權利要求所涵蓋。當前第1頁12