using a single canvas#325
Conversation
|
@PeterLaurence ready for PR. there was actually a ton left to do, but i think i've found everything, squashed all the bugs, and supported all the features and behaviors we provide. I've run it on real devices and emus, using the labs demo and the primary repo (this) demos, but it could always use some more testing if you have the time, on whatever devices or emus you have available and time to try. post back with any questions or suggestions. thanks |
|
@moagrius ok, i will try this and report back. |
| } else { | ||
| drawTilesWithoutConsideringPreviouslyDrawnLevel( canvas ); | ||
| } | ||
| Log.d( getClass().getSimpleName(), "prevous tile count: " + mPreviouslyDrawnTiles.size() ); |
There was a problem hiding this comment.
TODO : remove that log before release.
|
So i have tested this branch with the demos and my personal app. The behavior is very good, no issue so far. One particular point is that the tile transitions doesn't affect the overall performance and even improve the user experience (that's my opinion). Perhaps we should update the demos, for example Also, i noticed that the demo gradle has |
|
sounds great. I agree on updating the demos, and I'll fix the target SDKs. thanks Peter, +1? |
|
Yes, +1 (with the debug log removed). |
|
👍 |
This release changes how tiles are rendered. Instead of a
Viewfor each detail level, drawn in order, we use a singleViewGroupcanvasto draw all tiles.Some APIs have been deprecated, most notably
shouldRecycleBitmaps- bitmaps are always recycled now.Other changes should be largely internal and not noticed by most users, and should generally considered to be non-breaking, however some changes could be noticed (for example,
TileCanvasViewGroupno longer hasTileCanvasViewchildren - or any children - so if an existing app usesTileView.getTileCanvasViewGroup().getChildAt(0), the result would now be null.Changes that could be considered breaking:
TileCanvasViewhas been removedTileCanvasViewGroupno longer extendsScalingLayout, or implementsTileCanvasView.TileCanvasDrawListenerTile.stampTimeis deprecated and now a no-op