在S60第五版機器的MIDlet裡使用螢幕鍵盤

這一篇是我在Using on-screen keypad in MIDlets in S60 5th Edition devices的中文翻譯,總共翻譯了15天,中間雖然夾雜著更改工作達人的佈景,不過仍算是久的了,網址在在S60第五版機器的MIDlet裡使用螢幕鍵盤
為了備份,並轉貼在此:

概論

S60第五版介紹了觸控螢幕以及640 x 360像素的較大螢幕,為了讓這個設備能較容易地執行舊版的MIDlet這裡有一個稱作螢幕鍵盤的MIDlet,它提供了MIDlet向後相容的功能,這個功能使用Canvas,但是最初不是為了觸控設備用的。

螢幕鍵盤從Canvas那裡用了部份的螢幕然後Canvas應用程式提供了可能使用鍵盤來產生鍵盤事件,指針事件仍然可以在Canvas區域運作除了在螢幕鍵盤的區域外都可以使用。

用法

螢幕鍵盤在每個安裝的MIDlet套件都會自動發動,但使用者可以從應用程式管理設定來改變螢幕鍵盤的顯示與否,可能的值 有”off”、”Navigation keys only”及”Game and navigation keys”,該設定是應用程式的設定所以也可以在每個安裝的MIDlet套件中來做不同設定,螢幕鍵盤的狀態是使用JAD的參數”Nokia- MIDlet-On-Screen-Keypad”來定義,他的可能值有”no”、”gameactions”及”navigationkeys”。

Nokia-MIDlet-On-Screen-Keypad: no
Nokia-MIDlet-On-Screen-Keypad: gameactions
Nokia-MIDlet-On-Screen-Keypad: navigationkeys

三個可能的螢幕鍵盤設定:

  • No keypad
  • Navigation keys keypad: game actions UP, DOWN, LEFT, RIGHT and FIRE
  • Game actions keypad: game actions UP, DOWN, LEFT, RIGHT, FIRE, GAME_A, GAME_B GAME_C and GAME_D

鍵盤還包括兩個功能鍵按鈕,注意,螢幕鍵盤沒有數字或字元鍵,只有上面列出的鍵,另外也要注意,假如應用程式已經定義螢幕鍵盤設定使用者就不能改變 它,假如這個設定沒有在JAD屬性中定義,使用者就可以更改,螢幕鍵盤設定對整個MIDlet套件皆有效,預設狀況下,假如鍵盤設定沒有定義,遊戲按鍵會 顯示。

下面的圖片顯示縱向的360 x 640螢幕的三個設定:有導航及遊戲鍵的螢幕鍵盤、有導航鍵的螢幕鍵盤及沒有螢幕鍵盤,螢幕的解析度(實際Canvas的繪圖區域)是:

  • 沒有螢幕鍵盤的全螢幕:360 x 640
  • 有導航鍵的螢幕鍵盤全螢幕:360 x 384
  • 有導航及遊戲鍵的螢幕鍵盤全螢幕:360 x 360
  • 沒有螢幕鍵盤的非全螢幕:360 x 487
  • 有導航鍵的螢幕鍵盤非全螢幕:360 x 292
  • 有導航及遊戲鍵的螢幕鍵盤非全螢幕:360 x 240

Image:Tube_minesweeper3.png

下圖顯示橫向640 x 360螢幕的三個設定:有導航及遊戲鍵的螢幕鍵盤、有導航鍵的螢幕鍵盤及沒有螢幕鍵盤,螢幕的解析度(實際Canvas的繪圖區域)是:

  • 沒有螢幕鍵盤的全螢幕: 640 x 360
  • 有導航鍵的螢幕鍵盤全螢幕: 372 x 360
  • 有導航及遊戲鍵的螢幕鍵盤全螢幕: 320 x 360
  • 沒有螢幕鍵盤的非全螢幕: 502 x 288
  • 有導航鍵的螢幕鍵盤非全螢幕: 298 x 288
  • 有導航及遊戲鍵的螢幕鍵盤非全螢幕: 251 x 288

Image:Tube_minesweeper4.png

上圖也顯示JAD的屬性”Nokia-MIDlet-Original-Display-Size”實際的運作情形。

在有鍵盤的設備裡的螢幕鍵盤

在有觸控螢幕及外加鍵盤的設備裡(像Nokia N97) 開啟鍵盤會增加螢幕鍵盤的一個新模式,當鍵盤開啟時,箭頭和遊戲鍵被移除,功能鍵的標籤會顯示在設備的右側或底部,其位置可以使用”Nokia- MIDlet-On-Screen-Softkeys-Position”這個系統屬性來改變,假如沒有使用這個屬性,預設功能鍵顯示在右側,注意,假 如”Nokia-MIDlet-On-Screen-Keypad”屬性有”no”的值,功能鍵就不會顯示。

Nokia-MIDlet-On-Screen-Softkeys-Position: bottom
Nokia-MIDlet-On-Screen-Softkeys-Position: right // default, this is used, if no property exists in the jad file

Canvas螢幕尺寸是580×360像素時,功能建在右側,當尺寸是480×360像素時,功能建在底部。

Image:N97_open.pngImage:N97_open_bottom.png

另見

感謝你看到這裡,很快就可以離開了,但最好的獎勵行動就是按一下幫我分享或留言,感恩喔~

點我分享到Facebook

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *