Cómo cambiar un juego de J2ME a Android
J2me:
Plataforma de desarrollo
Android:
Sistema operativo
2. Comparación de estructura (código fuente, carpeta de recursos, imagen, datos)
J2me:
Res: Res: archivo de recursos
Src: código fuente
Android:
Src: código fuente
Res/drawable: imagen
Res/raw: sonido
Res/valores : cadena
Activos: archivo de datos
3. Comparación de paquetes de instalación
WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature (Ventana .FEATURE_NO_TREEN). FEATURE_NO_TITLE);
2 Obtener el tamaño de la pantalla
J2me:
Los métodos getHeight() y getWidth() de la clase Canvas p>
Android:
int screenWidth,screenHeight;
WindowManager windowManager = getWindowManager();
Pantalla display = windowManager.getDefaultDisplay();
WindowManager.getDefaultDisplay();
WindowManager.getDefaultDisplay();
WindowManager.getDefaultDisplay()
Paint(Gráficos) p>
Android:<
void onDraw(Canvas g)
6 gráficos
J2me:
Android: p>
7 Creación de imágenes
J2me:
Imagen.createImage(ruta);
Android:
img = BitmapFactory .decodeResource( getResources(),R.drawable.
Android:
drawText público nativo vacío (texto de cadena, flotante x, flotante y, pintura);
Sobrecargas múltiples
Sobrecargas múltiples
11 setClip
J2me:
Android:
clipRect booleano público (flotante a la izquierda, flotar arriba, flotar hacia la derecha, flotar abajo, operación Region.Op)
El último parámetro es: Region.Op.REPLACE
12 rotación
J2me:
drawRegion()
drawImage()
Android:
No he encontrado una buena manera, pero puedes crear una imagen invertida primero y luego usarlo.
El código encapsulado es el siguiente:
//Crear imagen volteada
public Bitmap createTransImage(Bitmap img,int trans)
{
// Imagen de mapa de bits;
prueba
{
// img = BitmapFactory.decodeResource(getResources)
// BitmapFactory. decodeResource (getResources)
// BitmapFactory.decodeResource(getResources)decodeResource(getResources(),sImg);
int ancho = img.getWidth();
int height = img.getHeight();
int newWidth = 200;
int newHeight = 200;
// Calcular la escala, en este caso = 0.postScale( scaleWidth, scaleHeight);
// Girar mapa de bits
int Degree=0;
Bitmap resizedBitmap=null;
int data [ ];
int buf;
cambiar(trans)
{
caso ROTATE_HOR:
/ / Crear inversión de espejo
data=new int [img.getWidth()*img.getHeight()];
img.getPixels(data, 0, img.getWidth(), 0 , 0, img.getWidth(), img.getHeight());
//Intercambiar datos
for(int i=0;i for(int j=0;j { buf=data[i*img . getWidth()+j]; datos[i*img.getWidth()+j]=datos[img.getWidth()*(i+1)-(j+1 ) ]; datos[img.getWidth()*(i+1)-(j+1)]=buf; } resizedBitmap= Mapa de bits .createBitmap(datos, img.getWidth()*img.getHeight()]; img.getPixels(datos, 0, img.getWidth() , 0, 0, img.getWidth(), img .getHeight()); //Intercambiar datos for(int i=0;i for(int j=0;j { buf=datos[i*img.buf=datos[i*img.getWidth ( )+j]; datos[i*img.getWidth()+j]=datos[(img.getHeight()-i-1)*img.getWidth()+j];< / pag > datos[(img.getHeight()-i-1)*img.getWidth()+j]=buf; } resizedBitmap=Bitmap.createBitmap( datos, img.getWidth(), img.getHeight(), Bitmap.Config. return resizedBitmap; case ROTATE_90: matrix.postRotate(90); //Recrea un nuevo mapa de bits resizedBitmap = Bitmap.createBitmap(img.getWidth(), img . getHeight(), Bitmap.Config.createBitmap(img, 0, 0, ancho, alto, matriz, verdadero); devuelve resizedBitmap } devolver mapa de bits redimensionado; } captura (Excepción e) { return null; } } } 13 drawRect J2me : Android: public void drawRect(flotante hacia la izquierda, flotante hacia arriba, flotante hacia la derecha, flotante hacia abajo, Paint paint) 14 Procesamiento de sonido J2me: