一種基于畫布的絕對定位方法
【專利摘要】本發(fā)明公開了一種基于畫布的絕對定位方法,包括以下步驟:A、定義標準參考畫布;B、基于標準參考畫布定義的布局,記錄對象的定位數(shù)據(jù);C、將參考畫布和目標畫布的映射,確定畫布縮放比例;D、對象在目標畫布按縮放比例縮放后,繪制目標對象。本發(fā)明通過標準參考畫布和目標畫布的映射,實現(xiàn)畫布內(nèi)對象的拉伸和屏幕適應,這種方法保留絕對定位的直觀和簡單,又能很好適應各種屏幕分辨率,從而改良Android絕對定位方式增強絕對定位的適用性。
【專利說明】一種基于畫布的絕對定位方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于移動【技術(shù)領(lǐng)域】,具體涉及一種基于畫布的絕對定位方法,適合于 Android移動設備終端。
【背景技術(shù)】
[0002] 現(xiàn)有 Android 布局技術(shù)中,常用的有 LinearLayout, RelativeLayout, TableLayout, FrameLayout ,而最直觀易用的絕對定位布局方式已經(jīng)被Android棄用,最 主要的原因就是絕對定位布局不能很好的適應屏幕分辨率的變化。
【發(fā)明內(nèi)容】
[0003] 為解決上述技術(shù)問題,本發(fā)明的目的是提供一種基于畫布的絕對定位方法。
[0004] 本發(fā)明采用的技術(shù)方案是: 一種基于畫布的絕對定位方法,其特征在于包括以下步驟: A、 定義標準參考畫布; B、 基于標準參考畫布定義的布局,記錄對象的定位數(shù)據(jù); C、 將參考畫布和目標畫布的映射,確定畫布縮放比例; D、 對象在目標畫布按縮放比例縮放后,繪制目標對象。
[0005] 進一步的,所述步驟A定義的內(nèi)容為參考畫布的規(guī)格,該規(guī)格為畫布的高與寬。
[0006] 進一步的,所述步驟B中,對象的定位數(shù)據(jù)為高與寬。
[0007] 進一步的,所述參考畫布規(guī)格與對象定位數(shù)據(jù)構(gòu)成參考布局模板文件。
[0008] 進一步的,所述步驟C包括以下步驟: C1、利用布局模板解析引擎提取布局模板文件; C2、確定目標畫布的規(guī)格,該規(guī)格為目標畫布的高與寬; C3、計算目標畫布相對參考畫布的縮放比例; C4、計算布局對象在目標畫布的定位數(shù)據(jù)。
[0009] 其中,所述C3包括中:寬縮放比=目標畫布寬度/參考畫布寬度;高縮放比=目 標畫布高度/參考畫布高度。
[0010] 所述C4中:寬度數(shù)據(jù)*寬縮放比=目標定位寬度數(shù)據(jù);高度數(shù)據(jù)*高縮放比= 目標定位高度數(shù)據(jù)。
[0011] 所述步驟D根據(jù)目標定位寬度數(shù)據(jù)和目標定位高度數(shù)據(jù)在目標畫布內(nèi)繪制目標 對象,構(gòu)成最終頁面布局。
[0012] 本發(fā)明的有益效果: 本發(fā)明通過標準參考畫布和目標畫布的映射,實現(xiàn)畫布內(nèi)對象的拉伸和屏幕適應,這 種方法保留絕對定位的直觀和簡單,又能很好適應各種屏幕分辨率,從而改良Android絕 對定位方式增強絕對定位的適用性。
【專利附圖】
【附圖說明】
[0013] 下面結(jié)合附圖對本發(fā)明的【具體實施方式】做進一步的說明。
[0014] 圖1是本發(fā)明的工作原理圖; 圖2是本發(fā)明的絕對定位方法流程圖; 圖3是本發(fā)明的目標畫布定位流程圖; 圖4是本發(fā)明具體實施例參考畫布的布局示意圖; 圖5是本發(fā)明具體實施例目標畫布的布局示意圖。
【具體實施方式】
[0015] 參考圖1-圖2所示,為本發(fā)明的一種基于畫布的絕對定位方法,包括以下步驟: A、 定義標準參考畫布; 本步驟定義的內(nèi)容為參考畫布的規(guī)格,該規(guī)格為畫布的高與寬。
[0016] 如圖4,在標準參考畫布(480*720)上布局,而布局對象只有一個登陸按鈕作為示 例; B、 基于標準參考畫布定義的布局,記錄對象的定位數(shù)據(jù);其中,該對象的定位數(shù)據(jù)為高 與寬; 上述A與B中的參考畫布規(guī)格與對象定位數(shù)據(jù)構(gòu)成參考布局數(shù)據(jù),布局好之后存儲布 局數(shù)據(jù)到布局文件。
[0017] C、將參考畫布和目標畫布的映射,確定畫布縮放比例; 其中,C又具體包括:如圖3 C1、利用布局模板解析引擎提取布局模板文件; C2、確定目標畫布的規(guī)格,該規(guī)格為目標畫布的高與寬; C3、計算目標畫布相對參考畫布的縮放比例; 其中,所述C3包括中:寬縮放比=目標畫布寬度/參考畫布寬度;高縮放比=目標畫 布高度/參考畫布高度。
[0018] C4、計算布局對象在目標畫布的定位數(shù)據(jù); 其中,寬度數(shù)據(jù)*寬縮放比=目標定位寬度數(shù)據(jù);高度數(shù)據(jù)*高縮放比=目標定位 高度數(shù)據(jù)。
[0019] D、對象在目標畫布按縮放比例縮放后,根據(jù)目標定位寬度數(shù)據(jù)和目標定位高度數(shù) 據(jù)在目標畫布內(nèi)繪制目標對象,構(gòu)成最終頁面布局,完成定位呈現(xiàn),見圖5。
[0020] 如上所述,本發(fā)明通過標準參考畫布和目標畫布的映射,實現(xiàn)畫布內(nèi)對象的拉伸 和屏幕適應,這種方法保留絕對定位的直觀和簡單,又能很好適應各種屏幕分辨率,從而改 良Android絕對定位方式并增強絕對定位的適用性。
[0021] 以上所述僅為本發(fā)明的優(yōu)先實施方式,本發(fā)明并不限定于上述實施方式,只要以 基本相同手段實現(xiàn)本發(fā)明目的的技術(shù)方案都屬于本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1. 一種基于畫布的絕對定位方法,其特征在于包括以下步驟: A、 定義標準參考畫布; B、 基于標準參考畫布定義的布局,記錄對象的定位數(shù)據(jù); C、 將參考畫布和目標畫布的映射,確定畫布縮放比例; D、 對象在目標畫布按縮放比例縮放后,繪制目標對象。
2. 根據(jù)權(quán)利要求1所述的一種基于畫布的絕對定位方法,其特征在于:所述步驟A定 義的內(nèi)容為參考畫布的規(guī)格,該規(guī)格為畫布的高與寬。
3. 根據(jù)權(quán)利要求2所述的一種基于畫布的絕對定位方法,其特征在于:所述步驟B中, 對象的定位數(shù)據(jù)為高與寬。
4. 根據(jù)權(quán)利要求3所述的一種基于畫布的絕對定位方法,其特征在于:所述參考畫布 規(guī)格與對象定位數(shù)據(jù)構(gòu)成參考布局模板文件。
5. 根據(jù)權(quán)利要求4所述的一種基于畫布的絕對定位方法,其特征在于:所述步驟C包 括以下步驟: C1、利用布局模板解析引擎提取布局模板文件; C2、確定目標畫布的規(guī)格,該規(guī)格為目標畫布的高與寬; C3、計算目標畫布相對參考畫布的縮放比例; C4、計算布局對象在目標畫布的定位數(shù)據(jù)。
6. 根據(jù)權(quán)利要求5所述的一種基于畫布的絕對定位方法,其特征在于:所述C3包括 中:寬縮放比=目標畫布寬度/參考畫布寬度;高縮放比=目標畫布高度/參考畫布高 度。
7. 根據(jù)權(quán)利要求6所述的一種基于畫布的絕對定位方法,其特征在于:所述C4中:寬 度數(shù)據(jù)*寬縮放比=目標定位寬度數(shù)據(jù);高度數(shù)據(jù)*高縮放比=目標定位高度數(shù)據(jù)。
8. 根據(jù)權(quán)利要求7所述的一種基于畫布的絕對定位方法,其特征在于:所述步驟D根 據(jù)目標定位寬度數(shù)據(jù)和目標定位高度數(shù)據(jù)在目標畫布內(nèi)繪制目標對象,構(gòu)成最終頁面布 局。
【文檔編號】G06F9/445GK104111839SQ201410366178
【公開日】2014年10月22日 申請日期:2014年7月29日 優(yōu)先權(quán)日:2014年7月29日
【發(fā)明者】余敬龍 申請人:廣東能龍教育股份有限公司