天天看點

Kitkat小螢幕模式單手操作研究之緣起

在調查如何實作類似vivo的單手操作小螢幕模式的時候,在網上看到如下的文章深有感觸(感覺世界又美好了很多^_^):

<http://blog.csdn.net/longxiaowu/article/details/25329677>

關鍵内容摘錄如下:

注:Android 4.3引入的wm工具

wm指令及用法:

系統說明:

usage: wm [subcommand] [options]

       wm size [reset|WxH]

       wm density [reset|DENSITY]

       wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]

 

wm size: return or override display size.

wm density: override display density.

wm overscan: set overscan area for display.
           

wm指令是對手機分辨率、像素密度、顯示區域進行設定,并可以快速看到效果的指令。其參數比較少,下面逐條介紹一下該指令的用法。

1、wm size [reset|WxH]

[]内的是可選項。單純運作wm size指令将會得到lcd本身設定的顯示分辨率。如下圖1-1所示:

Kitkat小螢幕模式單手操作研究之緣起

圖1-1 執行#wm size檢視手機的分辨率

wm size W x H指令是按witch x hight 設定分辨率。如果分辨率設定的過大,圖示會變大,反之則變小。設定了分辨率以後執行wm size指令,可以看到LCD本身的分辨率及overwrite的分辨率。如下圖1-2所示:

Kitkat小螢幕模式單手操作研究之緣起

圖1-2 執行#wm size設定手機的分辨率

#wm size reset 指令是将分辨率設定為LCD原始分辨率。

2、 wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]

該指令用來設定、重置LCD的顯示區域。四個參數分别是顯示邊緣距離LCD左、上、右、下的像素數。例如,對于分辨率為480x800的螢幕,在使用#wm size 720x1200指令後,再通過執行如圖1-3所示的指令,可将顯示區域限定在一個480x800的矩形框裡。效果圖如圖1-4所示。

Kitkat小螢幕模式單手操作研究之緣起

圖1-3 使用#wm overscan 指令設定螢幕overscan值

Kitkat小螢幕模式單手操作研究之緣起

圖1-4 執行#wm overscan後的效果圖

3、 wm density [reset|DENSITY]

該指令的用法類似于wm size 指令,作用是讀取、設定或者重置LCD的density值。density值即LCD的ppi.

調用#wm density指令,檢視目前裝置的density的值。

Kitkat小螢幕模式單手操作研究之緣起

圖1-5 執行#wm density檢視目前裝置的density值

調用#wm density 120設定目前裝置的density為120ppi,指令如圖6所示,執行的結果如圖7所示:

Kitkat小螢幕模式單手操作研究之緣起

圖1-6 執行#wm density設定目前裝置的density值

Kitkat小螢幕模式單手操作研究之緣起

圖1-7 執行圖6的指令後的效果圖

說明:圖1-7是在圖1-4的基礎上執行圖1-6的指令得到的,可以看到,此時螢幕中浏覽器應用顯示的是平闆的模式。從輸入欄就就可以看出來。

調用#wm density reset 将對density的修改恢複到原始值。

通過以上的嘗試,發現小螢幕模式就近在眼前。那麼接下來的工作就是,調查,Android的該指令的實作方式。

繼續閱讀