溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

android 修改launcher行數(shù)和列數(shù)的方法

發(fā)布時間:2020-09-11 13:58:38 來源:腳本之家 閱讀:189 作者:jueme 欄目:移動開發(fā)

android 修改launcher行數(shù)和列數(shù)

Launcher3桌面的行數(shù)和列數(shù)都是在InvariantDeviceProfile.java和DeviceProfile.java中動態(tài)計算的,xml中無法配置。

Note:L版本無InvariantDeviceProfile.java,是DynamicGrid.java,但是計算方法都是一樣的。

InvariantDeviceProfile中用InvariantDeviceProfile來配置各種屏幕的手機桌面。如下:

InvariantDeviceProfile的各個參數(shù)依次代表:

配置名字(任意定義)、最小寬度(單位是dp)、最小高度(單位是dp)、桌面行數(shù)、桌面列數(shù)、文件夾行數(shù)、文件夾列數(shù)、主菜單中predicted apps最小列數(shù)、桌面Icon的size(單位是dp)、桌面Icon的文字size(單位是dp)、Hotseat的Icon個數(shù)、Hotseat的Icon的size(單位是dp)、默認的桌面配置LayoutId。

PS:

如何由手機分辨率計算最小寬度、最小高度?

例如:手機分辨率為720*1280,DPI=320。

豎屏時:X*Y=720*1230(1230=屏幕高度-狀態(tài)欄高度-NavigationBar高度)

橫屏時:Y*X=646*1280(646=屏幕寬度-狀態(tài)欄高度-NavigationBar高度)

最小寬度為:323=Min(720,646)/(320/160)

最小高度為:615=Min(1230,1280)/(320/160)

如果要配置自己手機桌面的行數(shù)、列數(shù)、Hotseat的Icon個數(shù),需要計算"桌面Icon的size、桌面Icon的文字size、Hotseat的Icon的size",計算方式如下:

1、挑選三個和自己的手機配置最接近的DeviceProfile。最接近意味著dn 最小。

dn 的計算公式為:

android 修改launcher行數(shù)和列數(shù)的方法

 2、由逆距離加權(quán)插值計算結(jié)果,計算公式如下:

android 修改launcher行數(shù)和列數(shù)的方法

計算結(jié)果為: 

r1+r2+r3

例如:手機的最小寬度為294dp,最小高度為544dp。

1、挑選三個和自己的手機配置最接近的DeviceProfile:

▪Nexus S,distance is 52

▪Nexus 4,distance is 69

▪Stubby,distance is 102

2、由逆距離權(quán)重差值計算結(jié)果:

android 修改launcher行數(shù)和列數(shù)的方法

Hotseat的Icon的size為:37.57+10.65+1.29 = 49dp

dp轉(zhuǎn)換為px:如果手機DPI=240,那么dp應該乘以1.5(240/160)轉(zhuǎn)換為px,即49dp=73.5px。

桌面Icon的size、桌面Icon的文字size 計算與此類似。

總結(jié)

以上所述是小編給大家介紹的android 修改launcher行數(shù)和列數(shù)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI