夸大QRCodeReaderView时,抽屉布局会在底部裁剪

时间:2018-09-25 14:36:26

标签: android view zxing materialdrawer

在我的项目中,我正在使用5.0.0版的this material drawer lib2.0.1版的this QR code reader lib。 XML布局具有以下结构:

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ViewStub
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout="@layout/include_qr_reader" />

    <Toolbar
        android:id="@+id/toolbar"
        ... 
        />

    ...

</FrameLayout>

@layout/include_qr_reader只是一个视图:

<com.dlazaro66.qrcodereaderview.QRCodeReaderView 
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

首先在我的活动课程中,我正在检查摄像头权限,如果被授予权限,我只需打viewStub.inflate()。结果,我的抽屉被裁剪了,如下图所示:

更新视图(单击某些按钮)后,抽屉恢复正常。

而且LayoutInspector都可以:

如果您需要有关此案例的更多信息,请在评论部分让我知道。

问题

为什么当摄像机处于活动状态时,我的DrawerLayout为何会在底部被裁剪?

我已经尝试过:

  • .inflate()之后的代码中更改抽屉的布局参数
  • .inflate()之后的代码中更改qrreaderview的布局参数
  • .requestLayout().invalidate()QRCodeReaderView呼叫DrawerLayoutActivity.getWindow().getDecorView()
  • .requestLayout()中调用其中的.invalidate()new Handler().post(() -> ...)
  • viewStub.inflate().post(() -> drawer.getDrawerLayout().invalidate())

0 个答案:

没有答案