当设备处于横向模式时 MPAndroidChart PieChartRenderer 崩溃
MPAndroidChart PieChartRenderer crash when device is in landscape mode
我在我的应用程序中使用 MPAndroidChart。
我收到了很多来自用户的报告。
他们面临的问题是:
java.lang.IllegalArgumentException: width and height must be > 0
at android.graphics.Bitmap.createBitmap(Bitmap.java:922)
at android.graphics.Bitmap.createBitmap(Bitmap.java:901)
at android.graphics.Bitmap.createBitmap(Bitmap.java:868)
at com.github.mikephil.charting.renderer.PieChartRenderer.drawData(PieChartRenderer.java:79)
at com.github.mikephil.charting.charts.PieChart.onDraw(PieChart.java:96)
at android.view.View.draw(View.java:15423)
...
这些是导致崩溃的行。
mDrawBitmap = Bitmap.createBitmap((int) mViewPortHandler.getChartWidth(),
(int) mViewPortHandler.getChartHeight(), Bitmap.Config.ARGB_8888);
仅当我的平板电脑处于横屏模式时,该应用才会崩溃。
当我的设备处于横向模式时,图表 class 中的 onSizeChanged 似乎没有被调用。
横向模式 -> 纵向模式,调用 onSizeChanged
纵向模式 -> 横向模式,不调用 onSizeChanged
你确实是对的,Bitmap
初始化的高度从未被检查过。
我刚刚发布了一个修复程序,它在最新的提交中:https://github.com/PhilJay/MPAndroidChart/commit/bff61718198f839aa819c8769d4f71e755625b94
你可以去看看或者等我出下一个版本
我发现了问题。
当我尝试以编程方式尝试容器的 LayoutParams 时,应用程序崩溃。
当我只使用 xml 布局中指定的参数时,它起作用了。
我在我的应用程序中使用 MPAndroidChart。 我收到了很多来自用户的报告。 他们面临的问题是:
java.lang.IllegalArgumentException: width and height must be > 0
at android.graphics.Bitmap.createBitmap(Bitmap.java:922)
at android.graphics.Bitmap.createBitmap(Bitmap.java:901)
at android.graphics.Bitmap.createBitmap(Bitmap.java:868)
at com.github.mikephil.charting.renderer.PieChartRenderer.drawData(PieChartRenderer.java:79)
at com.github.mikephil.charting.charts.PieChart.onDraw(PieChart.java:96)
at android.view.View.draw(View.java:15423)
...
这些是导致崩溃的行。
mDrawBitmap = Bitmap.createBitmap((int) mViewPortHandler.getChartWidth(),
(int) mViewPortHandler.getChartHeight(), Bitmap.Config.ARGB_8888);
仅当我的平板电脑处于横屏模式时,该应用才会崩溃。
当我的设备处于横向模式时,图表 class 中的 onSizeChanged 似乎没有被调用。 横向模式 -> 纵向模式,调用 onSizeChanged 纵向模式 -> 横向模式,不调用 onSizeChanged
你确实是对的,Bitmap
初始化的高度从未被检查过。
我刚刚发布了一个修复程序,它在最新的提交中:https://github.com/PhilJay/MPAndroidChart/commit/bff61718198f839aa819c8769d4f71e755625b94
你可以去看看或者等我出下一个版本
我发现了问题。 当我尝试以编程方式尝试容器的 LayoutParams 时,应用程序崩溃。
当我只使用 xml 布局中指定的参数时,它起作用了。