Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 导航抽屉移动不平稳_Android_Actionbarsherlock - Fatal编程技术网

Android 导航抽屉移动不平稳

Android 导航抽屉移动不平稳,android,actionbarsherlock,Android,Actionbarsherlock,我已经使用sherelockActionbar库创建了导航抽屉。它工作正常,并将所有碎片加载到可用菜单列表中。但问题是,当菜单片段在一台计算机中加载数毫秒时,它会在中间停止——一个菜单对另一个菜单平稳移动。如何使所有菜单平滑 我建议您在导航抽屉完全关闭后尝试执行这些片段事务。有一个onDrawerClosed方法,如果设置了标志,您可以尝试实现片段交换 navDrawerToggle = new ActionBarDrawerToggle(this, navDrawerLayout,

我已经使用sherelockActionbar库创建了导航抽屉。它工作正常,并将所有碎片加载到可用菜单列表中。但问题是,当菜单片段在一台计算机中加载数毫秒时,它会在中间停止——一个菜单对另一个菜单平稳移动。如何使所有菜单平滑

我建议您在导航抽屉完全关闭后尝试执行这些片段事务。有一个onDrawerClosed方法,如果设置了标志,您可以尝试实现片段交换

    navDrawerToggle = new ActionBarDrawerToggle(this, navDrawerLayout,
            R.drawable.ic_drawer, R.string.drawer_open, R.string.drawer_close) {

        /** Called when a drawer has settled in a completely closed state. */
        public void onDrawerClosed(View view) {
            super.onDrawerClosed(view);
            supportInvalidateOptionsMenu();

            if(makeFragmentTransaction){
               // make transaction; swap fragment
            }
        }

        /** Called when a drawer has settled in a completely open state. */
        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
            supportInvalidateOptionsMenu();
        }
    };
只需在抽屉项目点击上设置标志,在抽屉关闭后,它将检查是否要进行交易。如果你决定试一试,让我知道你的结果如何


编辑:更新了代码。

这是选项菜单,但我已经为抽屉设置了自定义列表适配器,因此在列表的onclick列表器中选择了事件接收。您的解决方案正在工作,但在实际场景中效果不好,因为在前一种情况下,导航抽屉卡住了几毫秒,但在当前场景中,如果片段有点乱它需要时间来加载,所以用户点击菜单,几秒钟后它就会反射出来,看起来像床一样。