You can find a list of limitations here: http://developer.android.com/guide/topics/graphics/hardware-accel.html (see Unsupported Drawing Operations).
We will update this page with a table listing the limitations per API level. That table will also list limitations such as the one you're running into. On Fri, Jun 21, 2013 at 9:46 PM, Leith Bade <[email protected]>wrote: > Thanks for the fast reply guys! > > Is there a page that lists all the limitations of the hardware accelerated > rendering engine and the Android versions applicable? That would be very > useful. > > It's cool to see the Android developers actually read these emails. > > On Saturday, 22 June 2013 03:29:09 UTC+10, RichardC wrote: >> >> See this thread: >> https://groups.google.com/d/**msg/android-developers/** >> 2DT6JaPszR0/-Q2g6ZLRM5sJ<https://groups.google.com/d/msg/android-developers/2DT6JaPszR0/-Q2g6ZLRM5sJ> >> >> >> >> On Friday, June 21, 2013 5:32:51 PM UTC+1, Leith Bade wrote: >>> >>> I have been banging my head for a while trying to figure out why my >>> custom view was not drawing properly until I tried turning off hardware >>> acceleration. >>> >>> It is to do with canvas.drawCircle. It is drawn in solid blue at about >>> 300px radius. >>> >>> I also use canvas.drawText and that works fine under hardware >>> acceleration. >>> >>> The only thing I can think of is that I a using an unsymmetrical >>> canvas.scale... >>> >>> Here is my code: >>> // Called to redraw the map >>> @Override >>> protected void onDraw(Canvas canvas) { >>> // Check if we are in Eclipse UI editor >>> if (isInEditMode()) { >>> return; >>> } >>> // Save the canvas' transforms for unscaled UI elements >>> canvas.save(); >>> // Place the map offset in centre of screen >>> canvas.translate(getWidth() / 2, getHeight() / 2); >>> // Zoom the map >>> canvas.scale((float) (-1.0 / mMapController.**getMapMetresPerPixelX()), >>> (float) (-1.0 / mMapController.**getMapMetresPerPixelY())); >>> // Pan the map >>> canvas.translate((float) mMapController.getMapCentreX()**, (float) >>> mMapController.getMapCentreY()**); >>> // Draw a circle >>> canvas.drawCircle(0.0f, 0.0f, 0.01f, mCirclePaint); >>> // Restore the canvas' transforms for unscaled UI elements >>> canvas.restore(); >>> // Draw the map centre coordinated and scale in top left >>> canvas.drawText("Centre Coord: (" + String.format("%.4f", >>> mMapController.getMapCentreX()**) + ", " + String.format("%.4f", >>> mMapController.getMapCentreY()**) + ")", 16.0f * >>> mDisplayMetrics.density, 36.0f * mDisplayMetrics.scaledDensity, >>> mCoordPaint); >>> canvas.drawText("Scale:" + String.format("%.4f", >>> mMapController.getMapScale()), 16.0f * mDisplayMetrics.density, 54.0f * >>> mDisplayMetrics.scaledDensity, mCoordPaint); >>> } >>> >>> The values of the various variables from the debugger: >>> isInEditMode() = false >>> getWidth() = 1080 >>> getHeight() = 1701 >>> getMapMetresPerPixelX() = 5.37037039426811E-5 >>> getMapMetresPerPixelY() = -5.364583215838397E-5 >>> getMapCentreX() = 0.0 >>> getMapCentreY() = 0.0 >>> getMapScale() = 1.0 >>> mCirclePaint = new Paint(Paint.ANTI_ALIAS_FLAG); >>> mCirclePaint.setColor(Color.**BLUE); >>> mCoordPaint = new Paint(Paint.ANTI_ALIAS_FLAG); >>> mCoordPaint.setColor(Color.**BLACK); >>> mCoordPaint.setTextSize(18.0f * mDisplayMetrics.scaledDensity)**; >>> mDisplayMetrics.density = 3.0 >>> mDisplayMettrics.scaledDensity = 3.0 >>> >>> I hope that helps figure it out. >>> >>> I am going to try on the emulator with 4.2 too see what happens. >>> >>> Leith >>> >> -- > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Android Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- Romain Guy Android framework engineer [email protected] -- -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en --- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

