由于android刚入门,所以在看android时把j2me做一些比较,这样好入门点,还有是为了做移植,总体的来说
MIDlet相当于Activity,Displayable相当于View,BitMap相当于Image,Graphics相当于Canvas.
一、生命周期 MIDlet相对Activity
Android有点沿用J2ME的生命周期,或者说是加强
J2ME MIDlet的子类
?
import javax.microedition.midlet.MIDlet;import javax.microedition.midlet.MIDletStateChangeException;public class MyMidlet extends MIDlet { protected void destroyApp(boolean arg0) throws MIDletStateChangeException { // 销毁状态 } protected void pauseApp() { // 暂停状态 } protected void startApp() throws MIDletStateChangeException { // 活动状态 }}
?
Android的Activity子类
?
import android.app.Activity;import android.os.Bundle;public class MyActivity extends Activity { /** */ /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); } public void onStart() { super.onStart(); } public void onStop() { super.onStop(); } public void onResume() { super.onResume(); } public void onRestart() { super.onRestart(); } public void onPause() { super.onPause(); } public void onDestroy() { super.onDestroy(); } public void onFreeze(Bundle outState) { super.onFreeze(outState); }}
?
?
Displayable相对于View
J2ME分高级UI和低级UI,但在android中可用View显示,View其实更像J2ME的Canvas,如:
paint(Graphics g)同onDraw(Ganvas c)有点相似
J2ME的按键处理:
键盘接口为:keyPressed(),keyRepeated(),keyReleased()。
触笔接口为:pointerPressed(),pointerReleased(),pointerDragged()。
Android的按键处理:
键盘接口为:onKeyDown()、onKeyUp()、onTracKballEvent()。
触笔接口为:onTouchEvent()
KeyEvent的按键值相似于Canvas的按键值,如
KeyEvent.KEYCODE_DPAD_LEFT类似于Canvas.LEFT
?
?Image相似于BitMap
个人觉得BitMap比较麻烦,不像Image创建时一步到位,但它们都可以从文件,数据流中创建对象。
Resources r = getResources(); Bitmap board = Bitmap.createBitmap(240, 240, Bitmap.Config.ARGB_8888); Canvas c = new Canvas(board); Drawable tempBoard = r.getDrawable(R.drawable.board); tempBoard.setBounds(0, 0, 240, 240); tempBoard.draw(c);
Graphics相当于Canvas
android的Canvas不同于J2ME的Canvas,它更像于J2ME的Graphics,用来绘制。
?
System.out.printlt相当于Log
打印log时它们很相似,Log更强大一点
?
java简单解析docx、pptx、xlsx文档 http://fonter.iteye.com/blog/420319
Android Canvas的save()和restore() http://fonter.iteye.com/blog/420321
安装Jar提示“jar文件无效”的另一个奇怪原因 http://fonter.iteye.com/blog/414188
J2ME代码认证证书的支持情况 http://fonter.iteye.com/blog/413357
S40平台播放多媒体时内存优化 http://fonter.iteye.com/blog/413022
SUN的J2ME源代码下载 http://fonter.iteye.com/blog/412094
J2ME也玩GZIP,哈哈!http://fonter.iteye.com/blog/411284
开源一个J2ME解析类 http://fonter.iteye.com/blog/409830
手机中的重定向问题及处理 http://fonter.iteye.com/blog/400836
J2ME如何通过cmwap直接访问互连网 http://fonter.iteye.com/blog/400868
安装JAD时提示JAD无效原因之一 http://fonter.iteye.com/blog/400888
J2ME网络交互之优化 http://fonter.iteye.com/blog/405137
解决Eclipse无法调试J2ME程序的配置方法 http://fonter.iteye.com/blog/405697
J2ME模拟器加载RMS时突然失效的原因 http://fonter.iteye.com/blog/407576
J2ME飞信协议分析(初稿) http://fonter.iteye.com/blog/408385
?