本主题是我上一个主题的以下内容:如何将片段映射到Android中的演示文稿中?
我成功地在外部显示上复制了我的片段,使用了来自CommonsWare安卓组件的库"Presentation“。
然而,它调整初始片段的大小,以优化演示文稿的用户体验(它比设备在外部屏幕上显示得更好),但在我的例子中,我希望相反。
为此,我在库中搜索,它在库中调整原始片段的大小,它似乎在类AspectLockedFrameLayout.java中,更准确地说,在方法void onMeasure(int widthSpec, int heightSpec)中。
我试图不修改lockedWidth和lockedHeight (通过将它们放在评论中),这似乎是可行的:最初的片段没有调整大小,显示适合我。
然而,当我在启动应用程序之前连接外部显示器时,应用程序就会崩溃,这有点烦人。
经过大量测试,我发现在类MirroringFrameLayout.java和方法public void draw(Canvas canvas)中,变量bmp为null,然后崩溃。
你知道问题在哪里以及如何解决吗?
非常感谢,
诚挚的问候。
发布于 2015-02-09 12:32:37
我不能轻易地调试我看不到的代码。
快速浏览一下MirroringFrameLayout就会发现您的问题出现了,因为draw()是在没有在initBitmap()中创建Bitmap的情况下触发的。这可能是因为没有mirror,或者因为在调用以下任何方法之前调用了draw():
onSizeChanged()onPreDraw()onScrollChanged()如果您能够在库的不化的版本中重现此问题,则可以使用一个演示该问题的项目(或其他复制该问题的说明)来处理提出问题,我可以尝试解决它。
https://stackoverflow.com/questions/28407671
复制相似问题