当前位置: 代码迷 >> Android >> J2ME to android之学习札记
  详细解决方案

J2ME to android之学习札记

热度:61   发布时间:2016-05-01 15:33:54.0
J2ME to android之学习笔记

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

?

1 楼 JavaGroup 2009-07-02  
很详细,很好