cypressious
Ambitioniertes Mitglied
- 23
Hallo zusammen,
ich möchte in einem ImageView ein Bitmap darstellen, jedoch will ich einen Rahmen drum herum.
Dazu habe ich ein Custom View erstellt, dass von ImageView erbt. Darin überschreibe ich die onDraw Methode folgendermaßen.
Die Methode drawBorder erstellt eine verkleinderte Kopie des Bitmaps, dass die onDraw Methode der Oberklasse gezeichnet hat und zeichnet es nebst Rahmen wiederrum in den Canvas, der übergeben wurde.
Das Ergebnis entspricht zwar mehr oder weniger dem, das ich wollte, jedoch ist das Bild aufgrund der Verkleinerung sehr schwammig und das sowohl bei
als auch
.
Gibt es eine elegantere Möglichkeit einen Rahmen anzubringen?
ich möchte in einem ImageView ein Bitmap darstellen, jedoch will ich einen Rahmen drum herum.
Dazu habe ich ein Custom View erstellt, dass von ImageView erbt. Darin überschreibe ich die onDraw Methode folgendermaßen.
Code:
@Override
protected void onDraw(Canvas canvas) {
Bitmap b = Bitmap.createBitmap(canvas.getWidth(), canvas.getHeight(),
Bitmap.Config.RGB_565);
Canvas cn = new Canvas(b);
super.onDraw(cn);
[B]drawBorder[/B](canvas, b, borderColor);
}
Das Ergebnis entspricht zwar mehr oder weniger dem, das ich wollte, jedoch ist das Bild aufgrund der Verkleinerung sehr schwammig und das sowohl bei
Code:
Bitmap.createScaledBitmap(b, b.getWidth() - 12, b.getHeight() - 12, false);
Code:
Bitmap.createScaledBitmap(b, b.getWidth() - 12, b.getHeight() - 12, true);
Gibt es eine elegantere Möglichkeit einen Rahmen anzubringen?