Easy way to delete a bitmap?

by bouncyman » Wed, 17 Feb 2010 05:12:47 GMT


Sponsored Links
 What is the easiest way to remove a bitmap after I've drawn it to the
screen?
Thanks

--



Other Threads

1. GlSurfaceView single buffer

Hello,

How can I force GlSurfaceView to use single instead of double
buffering? Example code will be greatly appreciated ;)

BR,
Tomek
--~--~---------~--~----~------------~-------~--~----~

2. Show View object in a View object from layout

Hello,

I have my class below that is working. Inside it is another class that
extends View and that is also running.

I need to add two buttons on this screen and then create the layout below,
which has a View and two buttons:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android=http://schemas.android.com/apk/res/android
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<View android:id="@+id/View01"
android:layout_width="fill_parent"
android:layout_height="360px"
android:scrollbarSize="100px"
android:paddingBottom="-20px"
android:clickable="true"
android:drawingCacheQuality="auto"
android:focusable="true"
android:focusableInTouchMode="true"
android:keepScreenOn="true"
android:longClickable="true"
android:visibility="visible">
</View>

<Button android:layout_height="wrap_content"

android:visibility="visible"

android:text="Cancelar"

android:layout_marginTop="10px"

android:layout_width="150px"

android:width="150px"

android:id="@+btListaServicos/cancel"/>

<Button android:layout_height="wrap_content"

android:text="Compor Servios"

android:layout_marginTop="-49px"

android:width="150px"

android:layout_width="150px"

android:layout_marginLeft="170px"

android:id="@+btListaServicos/comporServicos">

</Button>

</LinearLayout>

How do I display the screen object in my View from the layout?

In this way does not work:

public class ServiceComposition extends Activity {

private DViewDbAdapter dbAdapter;

private WsServicos Servico;

private WsMetodos Metodo;

private Parametros Parametro;

private Parametros Returns;

Map<Integer, WsServicos> mServices;

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

*setContentView(R.layout.service_composition);*

dbAdapter = new DViewDbAdapter(this);

dbAdapter.open();

long idComposition = getIntent().getLongExtra("idComposition", 3);

this.mServices = populaDados(idComposition);

*View view = findViewById(R.id.View01);*

*view = new ExibeView(this, mServices);*

//setContentView(new ExibeView(this, mServices));

}

public class ExibeView extends View {

private ImagemObjeto[] imagem;

private int balID = 0; // variable to know what ball is being dragged

private boolean moveu = false;

private int distHorz = 60;

private int distVert = 60;

Map<Integer, Point> mPoint = new HashMap<Integer, Point>();

Point point;

/*

* Point point0 = new Point(); Point point1 = new Point(); Point point2

* = new Point(); Point point3 = new Point(); Point point4 = new

* Point();

*/

 public ExibeView(Context context, Map<Integer, WsServicos> mServices) {

super(context);

 // TODO Auto-generated constructor stub

setFocusable(true); // necessary for getting the touch events

 int QtdServices = mServices.size();

this.imagem = new ImagemObjeto[QtdServices];

for (int i = 0; i < QtdServices; i++) {

point = new Point();

point.x = distHorz;

point.y = distVert;

if (distHorz >= 180) {

distHorz = 0;

distVert += 60;

}

distHorz += 60;

mPoint.put(i, point);

}

for (int i = 0; i < QtdServices; i++) {

imagem[i] = new ImagemObjeto(context, R.drawable.quadrado,

mPoint.get(i));

}

}

// the method that draws the balls

@Override

protected void onDraw(Canvas canvas) {

// canvas.drawColor(0xFFCCCCCC); //if you want another background

// color

Paint paint = new Paint();

paint.setColor(-16776961);

// draw the balls on the canvas

for (ImagemObjeto img : imagem) {

canvas.drawBitmap(img.getBitmap(), img.getX(), img.getY(),null);

}

// calculaTraco(canvas, point0, point1, imagem[0]);

}

// events when touching the screen

public boolean onTouchEvent(MotionEvent event) {

int eventaction = event.getAction();

int X = (int) event.getX();

int Y = (int) event.getY();

boolean move = false;

switch (eventaction) {

case MotionEvent.ACTION_DOWN: // touch down so check if the finger

// is on a ball

balID = 0;

for (ImagemObjeto img : imagem) {

// check if inside the bounds of the ball (circle)

// get the center for the ball

int centerX = img.getX() + 25;

int centerY = img.getY() + 25;

// calculate the radius from the touch to the center of the

// ball

double radCircle = Math

.sqrt((double) (((centerX - X) * (centerX - X)) + (centerY - Y)

* (centerY - Y)));

// if the radius is smaller then 23 (radius of a ball is

// 22), then it must be on the ball

if (radCircle < 23) {

balID = img.getID();

moveu = false;

break;

}

// check all the bounds of the ball (square)

// if (X > ball.getX() && X < ball.getX()+50 && Y >

// ball.getY() && Y < ball.getY()+50){

// balID = ball.getID();

// break;

// }

}

break;

case MotionEvent.ACTION_MOVE: // touch drag with the ball

// move the balls the same as the finger

if (balID > 0) {

imagem[balID - 1].setX(X - 25);

imagem[balID - 1].setY(Y - 25);

moveu = true;

}

break;

case MotionEvent.ACTION_UP:

// touch drop - just do things here after dropping

//seleciona(moveu, imagem[balID - 1]);

if (!moveu){

DView dv = new DView();

dv.showAlertCustom(ServiceComposition.this);

}

break;

 }

// redraw the canvas

invalidate();

return true;

}
Can help me?

Thanks!

--~--~---------~--~----~------------~-------~--~----~

3. How to add more words onto Binary Dictionary(main.dict)??

4. Launcher and Widget architecture questions

5. Get Process ID of while launching any specific applicatio

6. Can't use File Explorer in DDMS on device

7. UK Android