-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to test performance? #22
Comments
Maui framerate < 60 when there are 200 controls: sharex-20230304111633.mp4 |
SharpConstraintLayout.Native is ok when there are 200 controls: sharex-20230304120657.mp4 |
when use net6, i see log show measure many times, tonight i try use net7, measure little times, tomorrow i will test it. |
200个控件在flow里慢的原因主要是重复布局了, 可能导致重复布局的因素是文本输入控件的重复布局
|
|
I see log always have some bug about measure order, breakpoint sometimes not work, I feel best way test it is use a complex collectionview, see fps when fast scroll. |
When i use ConstraintLayout in https://github.com/xtuzy/MauiUICollectionView, I know a way to test performance, use IView.Measure can get time fo measure. Now test code see 49a27fe , it use a CollectonView, use Official Layout and ConstraintLayout to layout item, record time of measure. I run it on android old phone, it scroll well: One bug is it is slow on start, use official layout also. |
I always worry SharpConstraintLayout can't be used in real word, because i don't know the performance, test in core is fast, but in ui, it need calculate more things, i don't know how to test it. I only know, when i resize Windows app, flow test like slow.
Goolgle use androidx.constraintlayout , i believe it meet needs. I try to add a framerate label and a androidx.constraintlayout
flow test to compare with sharpconstraintlayout at a5ec59b, get result:
sharex-20230303104301.mp4
We can see when resize window of app that run in Windows subsystem for Android, androidx.constraintlayout and sharpconstraintlayout all get low framerate. But when change child, framerate is ok.
The text was updated successfully, but these errors were encountered: