由于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