Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.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
Java 如何将ViewPager与fragment交换_Java_Android_Android Fragments_Android Studio - Fatal编程技术网

Java 如何将ViewPager与fragment交换

Java 如何将ViewPager与fragment交换,java,android,android-fragments,android-studio,Java,Android,Android Fragments,Android Studio,我有一个带有ViewPager的选项卡栏和一些列表,我可以点击它,在fragmant后面找到我的ViewPager。使用replace将我的android.support.v4.view.ViewPager更改为fragment时遇到一些问题。 以下是我的布局,其中包括: <RelativeLayout android:layout_width="match_parent" android:layout_height="0dp"

我有一个带有ViewPager的选项卡栏和一些列表,我可以点击它,在fragmant后面找到我的ViewPager。使用replace将我的android.support.v4.view.ViewPager更改为fragment时遇到一些问题。 以下是我的布局,其中包括:

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="6">
            <fragment
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/orders_fragment"
                android:name="fragments.OrderFragment1"
                tools:layout="@layout/fragment_2" />


            <android.support.v4.view.ViewPager
                android:id="@+id/pager"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/primaryColor"/>



        </RelativeLayout>

我试着这样做:

list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            FragmentManager manager = getSupportFragmentManager();
            FragmentTransaction transaction=manager.beginTransaction();
            Fragment f1 = manager.findFragmentById(R.id.pager);
            transaction.remove(f1);
            transaction.commit();
        }
    });
list.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
FragmentManager=getSupportFragmentManager();
FragmentTransaction=manager.beginTransaction();
片段f1=manager.findFragmentById(R.id.pager);
事务。删除(f1);
commit();
}
});

我错了吗?我能用我的方式做这件事吗?或者有什么特别的方法来做这类事情?我是这方面的新手,所以如果有人举个例子或什么的话,我会很高兴

ViewPager应该是布局的第一个元素。现在可能是片段不可点击和聚焦。试试这个:

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="6">

            <android.support.v4.view.ViewPager
                android:id="@+id/pager"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@color/primaryColor"/>

             <fragment
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/orders_fragment"
                android:name="fragments.OrderFragment1"
                tools:layout="@layout/fragment_2" />


        </RelativeLayout>


事务。删除(f1);was事务.replace(R.id.orders\u片段,f1);也我有很长一段时间没有睡觉。如果在查看页面后会出现片段,我们会在其顶部看到它,我想只有在单击列表后才会看到它