Android與J2me比較

來源:互聯網
上載者:User
一、
程式入口J2me程式入口類為
MIDlet,所有的
j2me程式都要繼承該類來初始化
j2me程式。
Android程式入口是
Activity類。下面先看看她們的生命週期。J2me MIDlet
生命週期1

startApp
(活動狀態)程式啟動的時候會調用該方法來初始化使用者需要的資源。2

PauseApp
(暫停狀態)當手機來電接電話的時候,會調用該介面。使用者可以調用該介面停止也寫線程的操作。3

destroyApp
(銷毀狀態)程式退出的時候調用。使用者可以調用該介面處理處於活動狀態的線程。該幾個周期狀態有
AMS
調用轉換,也可以程式碼調用轉換。
resumeRequest
調用會的結果是
AMS
會調用
startApp
方法,
notifyPaused
調用的結果是可能
AMS
調用
PsuseApp

notifyDestroyed
調用會使
AMS
銷毀該
midlet
。Android Activity
生命週期1

onCreate
程式開始初始化的時候調用該介面,使用者導航返回到
Activity
的時候也會調用該介面。類似於
J2me
裡面多個
Canvase(Displayable)
切換。所以
Activity
也類似於
Displayable
。2

onStart onCreate
調用完後,程式調用該介面。3

onResume onStart
調用後調用該介面。此時
Activity
進入運行狀態。4

onPause
新的
Activity
啟動的時候調用該介面。5

onStop

Activity
不可見的時候調用。6

onDestroy
程式銷毀的時候調用。二、
顯示組件J2me
中所有可顯示的組件都是直接或間接的繼承了
Displayable
,直接的是
Canvas

Screen
。不同的繼承導致了低級
UI
和進階
UI
的區別。
J2me
中現成的
UI
組件都是直接或者間接繼承了
Screen
。只要調用
Display.getDisplay(MIDLet instan).setCurrrent(Displayable disp)
,就可以把組件顯示到手機介面上。切換介面的時候也可以使用該介面。Android
可見的組件直接或者間接繼承了
android.view.View
。通過
Activity.setContentView(View view)
就可以顯示在
android
手機介面上,切換介面的時候也可以使用該介面。如果是直接繼承了
View
而不是
Android
內建的
UI
組件,那麼還要自己去實現它的重新整理,類似
J2me
的低級
UI
組件。三、
重新整理處理J2me
重新整理:J2me
進階
UI
組件由組件內部重新整理實現,低級
UI
可以通過
Canvas

repain()
來重新整理。低級
UI
架構可以用
MVC
方式來實現,建議使用二級緩衝。Android
重新整理:Android
提供介面
onLayout
來提供該
View
調整其裡面組件元素的位置布局,使用者只需要重寫該介面就
ok
。重新整理介面
onDraw
,該介面用來重新整理介面裡面的繪製元素。該介面類似
j2me Canvas

paint
介面。不過兩個平台傳得參數有些意思。
J2me
傳的時
Graphics
,而
android
傳得是
Canvas

Android
繪製的時候會傳入一個參數
Paint
。該對象表示繪製的風格,比如顏色,字型大小,字型格式等。如果是移植的話,建議
android
也使用二級緩衝,這樣也容易管理。四、
使用者事件處理J2me
的鍵盤、觸筆事件都是通過
Canvas
定義介面分發。使用者只需要從寫這些介面就
ok
。它們分別是。鍵盤介面為:
keyPressed(),keyRepeated(),keyReleased()
。觸筆介面為:
pointerPressed(),pointerReleased(),pointerDragged()
。Android
的鍵盤,觸筆通過
View
中定義,只要
override
其介面就
ok
了。觸筆處理介面
onTouchEvent
。軟鍵盤
onKeyDown()

onKeyUp()

onTracKballEvent()
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.