Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.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和选项卡放在片段中并替换它_Java_Android_Android Activity_Android Viewpager_Fragment - Fatal编程技术网

Java 将ViewPager和选项卡放在片段中并替换它

Java 将ViewPager和选项卡放在片段中并替换它,java,android,android-activity,android-viewpager,fragment,Java,Android,Android Activity,Android Viewpager,Fragment,在我的主要活动中,我有一个带有两个选项卡的ViewPager,每个选项卡都有一个片段中的内容。其中一个选项卡包含项目列表,当我按下该列表中的项目时,我希望该项目的详细信息显示在屏幕上。我想把整个ViewPager放在一个片段中,当用户点击该项目时,表示整个ViewPager的片段将被另一个表示该项目细节的片段替换。这可能吗?这是一种良好的做法吗?也许我应该用物品的细节开始另一项活动 怎么做是你自己的选择。切换你的片段是非常好的 getSupportFragmentManager().beginT

在我的主要活动中,我有一个带有两个选项卡的
ViewPager
,每个选项卡都有一个片段中的内容。其中一个选项卡包含项目列表,当我按下该列表中的项目时,我希望该项目的详细信息显示在屏幕上。我想把整个
ViewPager
放在一个片段中,当用户点击该项目时,表示整个
ViewPager
的片段将被另一个表示该项目细节的片段替换。这可能吗?这是一种良好的做法吗?也许我应该用物品的细节开始另一项活动

怎么做是你自己的选择。切换你的片段是非常好的

getSupportFragmentManager().beginTransaction().replace(android.R.id.content, new FragDetails())
                    .addToBackStack(FragPager.class.getName()).commit();

切换到另一个活动也很好,当你打开一个新的活动(当然还有其他一些生命周期的东西)时,你会有更多的“轻弹”屏幕。如果您不想这样做,请切换片段。

但是否真的可以从片段中正确配置
ViewPager
?我的意思是我需要将导航模式设置为选项卡等等。可以从一个片段中执行吗?当然,你可以,你可以从你的片段中获得一切,甚至是actionbar<代码>getActivity()。getActionBar()是你的朋友。;-)您还可以使用内部片段来拥有承载其他片段的片段层次结构(例如承载ViewPager的片段)。
getSupportFragmentManager().beginTransaction().replace(android.R.id.content, new FragDetails())
                    .addToBackStack(FragPager.class.getName()).commit();