Zeichnen Sie einen Kreis auf einem vorhandenen image
Ich versuche, zeichnen Sie einen Kreis auf ein Bild, das als res/drawable/schoolboard.png
. füllt das Bild den hintergrund-Aktivität. der folgende Code funktioniert nicht:
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.schoolboard);
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setColor(Color.BLUE);
Canvas canvas = new Canvas(bitmap);
canvas.drawCircle(60, 50, 25, paint);
ImageView imageView = (ImageView)findViewById(R.drawable.schoolboard);
imageView.setAdjustViewBounds(true);
imageView.setImageBitmap(bitmap);
jede Hilfe wird sehr geschätzt werden. danke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es einige Fehler in deinem code:
erste Sache, die Sie nicht geben können Referenz-Id für drawable in
findViewById
also ich denke du meinst so etwas wie, dass
schoolboard_image_view
ist die Bild id in der xml-layout (überprüfen Sie Ihr layout für die richtige id)Bitte stellen Sie sicher, dass Sie die richtige Bild-Id:
Bildansicht Bildansicht = (Bildansicht)findViewById(R. id.schoolboard_image_view);
android:background="@drawable/schoolboard"
im RelativeLayout. jetzt funktioniert es!Zuerst müssen Sie erstellen Sie ein neues bitmap, weil BitmapFactory bitmap aus.decodeResource () - Methode ist unveränderlich. Sie können dies mit dem folgenden code:
Verwenden Sie diese bitmap in Canvas-Konstruktor. Dann ziehen Sie ein bitmap auf Leinwand.
Auch R. drawable.schoolboard ist nicht eine richtige Ansicht id.