fitSystemWindows与MaterialDrawer

时间:2016-06-20 14:12:10

标签: android materialdrawer

我想使用材料抽屉大约30次我已经使用过它。 如果我在OnCreate方法中放置materialDrawer构建器一切正常。使用线程在一些秒后构建抽屉CountDown计时器会在状态栏中生成白色灰色空间。

构建它的简单代码:

result = new DrawerBuilder(this)
            .withActivity(this)
            .withToolbar(toolbar)
            .withActionBarDrawerToggle(true)
            .addDrawerItems(

我的价值观 - 21活动风格:

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

我的activity_main.xml:观看 fitSystemWindows =&#34; true&#34; 。在CoordinatorLayout解决状态栏问题中使用此属性。但是现在xml底部的空间相同。从协调器中删除它会导致状态栏上的问题,而不再是底层布局。

1 个答案:

答案 0 :(得分:1)

您不能在Android中的非UI线程上进行UI操作。你可以在这里阅读更多相关内容: https://developer.android.com/training/multiple-threads/communicate-ui.html

一般情况下,如果将代码置于处理程序中以便在主线程上执行它应该会有所帮助:

new Handler().postDelayed(new Runnable() {
  @Override
  public void run() {
     //your code
  }
}, 1);

但实际上我建议您使用onCreate方法创建抽屉。如果您还没有关于这个地方的项目的信息,您可以稍后使用Drawer对象添加它们。您可以在此处构建有关如何修改抽屉的示例:https://github.com/mikepenz/MaterialDrawer#modify-items-or-the-drawer

您可能还想查看Drawer的javadoc http://static.javadoc.io/com.mikepenz/materialdrawer/5.3.1/com/mikepenz/materialdrawer/Drawer.html