私は自分のためにテストするためにアンドロイドアプリを作っています。私はキャンバスを使用してビットマップイメージを描画しようとしていますが、なぜそれは動作していないのですか?それは、スタートアップの後に何も例外なくそれ自身を1秒で閉じるだけです。アンドロイドでビットマップを描く
これは私がこれまで使用していますコードです:
package com.mysoftwaremobileapps.BitmapExample;
import java.util.ArrayList;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.MotionEvent;
public class BitmapExampleActivity extends Activity {
/** Called when the activity is first created. */
private ArrayList<CustomImageViewActivity> CustomImages;
Bitmap ImageView1;
float x;
float y;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Canvas c = new Canvas();
drawImage(c);
}
public void doDraw(Canvas canvas)
{
for (CustomImageViewActivity p: CustomImages) {
canvas.drawBitmap(ImageView1, p.getX(), p.getY(), null);
}
}
public void drawImage(Canvas canvas)
{
ImageView1 = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
Paint black;
black = new Paint();
black.setStyle(Paint.Style.FILL);
black.setColor(Color.GRAY);
canvas.drawRect(0, 0, canvas.getWidth(), canvas.getHeight(), black);
canvas.drawBitmap(ImageView1, null, null);
//Parachuter nr.1
x = 14;
y = 28;
CustomImageViewActivity p = new CustomImageViewActivity(x, y);
CustomImages.add(p);
Canvas c1 = new Canvas();
doDraw(c1);
}
public boolean onTouchEvent(MotionEvent event)
{
if (event.getAction() == MotionEvent.ACTION_DOWN) {
for (CustomImageViewActivity p: CustomImages) {
p.posX = event.getX();
p.posY = event.getY();
}
}
return false;
}
}
'キャンバスC = nullを、それを初期化し、doDraw(C);'あなたはそれらのすべてが機能ヌル –
を渡している、ありがとう! – user1183066