相关疑难解决方法(0)

DrawerLayout的项目点击 - 何时是替换片段的正确时间?

我正在开发一个使用导航抽屉图案的应用程序(使用DrawerLayout).

每次单击抽屉的项目,都会替换主容器中的片段.

但是,我不确定何时是进行片段交易的合适时机?抽屉开始关闭时?或者关闭后?

在google的documentaion示例中,您可以看到他们在项目单击后立即执行事务,然后关闭抽屉.
结果,抽屉看起来很迟钝而且不平滑,看起来非常糟糕(它也发生在我的应用中).

GmailGoogle云端硬盘应用程序中,另一方面,它似乎是在抽屉关闭后进行交易(我是对吗?).
结果,抽屉没有延迟且非常平滑,但至少需要大约1秒钟(抽屉关闭所需的时间)才能看到下一个片段.

在立即进行片段交易时,似乎抽屉没有办法顺畅.

你觉得怎么样?

提前致谢!

android android-fragments fragmenttransaction navigation-drawer drawerlayout

46
推荐指数
4
解决办法
2万
查看次数

导航抽屉在Android上滞后

我遇到了导航抽屉的问题,它太慢了,我正在寻找的解决方案是首先关闭抽屉然后显示活动,但它不起作用,当然我错过了一些东西.

private class DrawerItemClickListener implements ListView.OnItemClickListener {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int posicao, long id) {
            setLastPosition(posicao);
            setFragmentList(lastPosition);
            layoutDrawer.closeDrawer(linearDrawer);
        }
    }

    private OnClickListener userOnClick = new OnClickListener() {
        @Override
        public void onClick(View v) {
            layoutDrawer.closeDrawer(linearDrawer);
        }
    };

    private void setFragmentList(int posicao) {

        FragmentManager fragmentManager = getSupportFragmentManager();
        Fragment fragment = new FragmentViagens();

        switch (posicao) {

            case 0:
                fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();
                break;
            case 1:
                fragmentManager.beginTransaction().replace(R.id.content_frame, new FragmentPedidos()).commit();
                break;
            case 2:
                fragmentManager.beginTransaction().replace(R.id.content_frame, new FragmentClientes()).commit();
                break;

        }

        navigationAdapter.setChecked(posicao, true);
        setTitleFragments(lastPosition);
        navigationAdapter.resetarCheck();
        layoutDrawer.closeDrawer(linearDrawer); …
Run Code Online (Sandbox Code Playgroud)

java android fragmenttransaction navigation-drawer

19
推荐指数
4
解决办法
3万
查看次数