在片段

时间:2015-11-17 02:18:40

标签: android android-fragments

ViewPager的片段中,我有ListViewGridView。最初我隐藏ListView并显示GridView。当我点击GridView中的某个项目时,我会隐藏GridView并显示ListView。现在,当我再次点击时,我想返回上一个状态:隐藏ListView并显示GridView。我该怎么做呢?我在活动中尝试使用方法onBackPressessed

public void onBackPressed() {
        int count = viewPager.getCurrentItem();
        if (count == 3) {
            if (getSupportFragmentManager().getBackStackEntryCount() == 1) {
                super.onBackPressed();
            } else {
                // Toast.makeText(this, "BACK",
                // Toast.LENGTH_SHORT).show();
                if (!flag) {
                    Toast.makeText(this, "Nhấn Back một lần nữa để thoát",
                            Toast.LENGTH_SHORT).show();
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            flag = true;
                            try {
                                Thread.sleep(2000);
                            } catch (InterruptedException e) {
                                e.printStackTrace();
                            }
                            flag = false;
                        }
                    }).start();
                } else {
                    super.onBackPressed();
                }
            }

        } else....

但我不知道怎么称它为碎片。请帮帮我。

1 个答案:

答案 0 :(得分:0)

您可以使用托管活动调用onBackPressed。在你的片段中试试这个:

getActivity().onBackPressed();

这会调用活动的onBackPressed()方法,它会做你想要的。