Java 列表片段没有消失

Java 列表片段没有消失,java,android,android-intent,android-fragments,android-fragmentactivity,Java,Android,Android Intent,Android Fragments,Android Fragmentactivity,根据我的代码,每当我运行我的应用程序并单击列表项时,预期的片段确实会出现,但列表片段不会从视图中消失(请参见随附的屏幕截图)。要从用户视图中删除列表,需要做什么 FragmentItem1 newFragment = new FragmentItem1(); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.replace(R.id.

根据我的代码,每当我运行我的应用程序并单击列表项时,预期的片段确实会出现,但列表片段不会从视图中消失(请参见随附的屏幕截图)。要从用户视图中删除列表,需要做什么

    FragmentItem1 newFragment = new FragmentItem1();
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

    transaction.replace(R.id.master_container, newFragment);                         

transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
    transaction.addToBackStack(null);
    transaction.commit();

后退按钮方法

@Override
public void onBackPressed() {
    if (mTwoPane) {
        FragmentMainList newFragment = new FragmentMainList();
        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

        // Replace whatever is in the master_container view with the above fragment
        transaction.replace(R.id.master_container, newFragment);
        transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);

        // Commit the transaction
        transaction.commit();
    }
}

假设“主容器”是与ListView相邻的布局,那么您当前观察到的是正确的行为。ListView不会自动消失


在ListView上调用设置可见性,使其消失。使用参数ListView.GONE用于此方法

发布您的代码,以便修复错误。是的,很好,但文本不会出现在屏幕顶部,因此从技术上讲,列表片段仍然存在检查最新的屏幕截图。文本“this is item 1”在调用View.INVISIBLE后不会出现。我认为后面的内容,您可以覆盖onBackPressed。首先让它调用super方法,然后添加一行以再次调用setVisibility。这一次,传递ListView.Visible您没有在OnBackPressed中调用setVisibility。错误与您声明list_main的位置有关。如果您只是将其声明为类变量而不是方法变量,则应该解决该错误。