Tag: android fragments

用活动组内的另一个片段replace一个片段

我有一个组活动内的片段,我想用另一个片段replace它: FragmentTransaction ft = getActivity().getFragmentManager().beginTransaction(); SectionDescriptionFragment bdf = new SectionDescriptionFragment(); ft.replace(R.id.book_description_fragment, bdf); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN); ft.addToBackStack(null); ft.commit(); 当它作为一个单独的项目而没有使用活动组,每个东西都可以正常工作时,它可以很好的工作,因为控件进入getview(),但是没有视图可见,甚至没有任何exception出现,我希望书的细节片段被部分细节片段取代。 book细节片段的xml具有id book_description_fragment和xml,用于片段描述片段具有id section_description_fragment。 上面的代码是在一个项目的onClick方法中,我想当用户在水平滚动视图中的一个项目上点击,然后片段改变。

在使用片段时,在Android导航抽屉图像和上方插入符号之间切换

当使用导航抽屉时,Android开发人员build议在ActionBar中“只有在导航抽屉中表示的那些屏幕实际上应该具有导航抽屉图像”,并且“所有其他屏幕都具有传统的向上克拉”。 详情请看这里:http: //youtu.be/F5COhlbpIbY 我正在使用一个活动来控制多个片段级别,并且可以让导航抽屉图像在各个级别显示和运行。 在创build较低级别的片段时,我可以调用ActionBarDrawerToggle setDrawerIndicatorEnabled(false)来隐藏导航抽屉图像,并显示“ LowerLevelFragment lowFrag = new LowerLevelFragment(); //disable the toggle menu and show up carat theDrawerToggle.setDrawerIndicatorEnabled(false); getSupportFragmentManager().beginTransaction().replace(R.id.frag_layout, lowFrag, "lowerFrag").addToBackStack(null).commit(); 我遇到的问题是,当我导航回顶层的碎片时,上克拉仍然显示,而不是原始的导航抽屉图像。 有关如何“刷新”顶级碎片上的ActionBar以重新显示导航抽屉图像的任何build议? 解 汤姆的build议为我工作。 以下是我所做的: 主要活动 此活动控制应用程序中的所有片段。 当准备新的片段来replace别人,我设置DrawerToggle setDrawerIndicatorEnabled(false)像这样: LowerLevelFragment lowFrag = new LowerLevelFragment(); //disable the toggle menu and show up carat theDrawerToggle.setDrawerIndicatorEnabled(false); getSupportFragmentManager().beginTransaction().replace(R.id.frag_layout, lowFrag).addToBackStack(null).commit(); 接下来,在onBackPressed的覆盖中,我通过将DrawerToggle设置为setDrawerIndicatorEnabled(true)来恢复上述效果: @Override public void onBackPressed() { super.onBackPressed(); […]

刷新片段重新加载

在android应用程序中,我将数据从Db加载到Fragment的TableView 。 但是,当我Reload的fragment它显示了以前的数据。 我可以使用当前数据而不是以前的数据重新填充Fragment吗?

如何将一些数据转移到另一个片段?

如何将一些数据转移到另外一个Fragment呢,同样的,这个过程是用extras的intents ?

如何在具有TabLayout的片段中使用CardView行实现RecyclerView

我想在一个使用TabLayout的Activity中实现ListFragment,这样我就可以在不同的列表之间滑动。 最后,它应该成为一个预订应用程序,以便您可以select不同的学科,并预定一定的时间段。 不过到目前为止,我只能实现一个ListActivity或标签活动(从android studio的标准),但不是两个。 如果有人可以帮忙,会很高兴。 选项卡式活动: public class Diciplines extends AppCompatActivity { /** * The {@link android.support.v4.view.PagerAdapter} that will provide * fragments for each of the sections. We use a * {@link FragmentPagerAdapter} derivative, which will keep every * loaded fragment in memory. If this becomes too memory intensive, it * may be best to […]

dynamic更改片段选项卡主机内的片段?

我有一个主要的活动,这是片段活动在这里我设置两个选项卡与B片段中的两个片段A和B我有一个button,当用户单击button我想要将片段B更改为片段C.但上面的选项卡是可见的… 我怎样才能实现replace标签内的碎片? 任何解决scheme,非常感谢。

Android – 我需要一些片段与活动和意见的澄清

在Android API 11+中,Google发布了一个名为Fragment的新类。 在video中,Googlebuild议尽可能(链接1,链接2),我们应该使用片段而不是活动,但是他们没有解释为什么。 碎片的目的和它们的一些可能的用途(除了一些简单的视图/布局可以轻易实现的UI示例之外)? 我的问题是关于碎片: 什么是使用片段的目的? 与使用活动/视图/布局相比,使用片段有哪些优缺点? 奖金问题: 你能给一些非常有趣的碎片使用吗? 谷歌没有在他们的video中提到的东西? 在片段和包含它们的活动之间进行通信的最佳方式是什么? 使用碎片时要记住什么是最重要的事情? 任何提示和警告从您的经验?

从片段中调用一个活动方法

试图从一个片段调用我的活动中的一个方法。 我想要片段给方法数据,并获取方法返回时的数据。 我想实现类似于调用静态方法,但没有使用静态,因为它在活动中创build问题。 新的碎片,所以我需要一个简单和教学的解释! 谢谢!

如果存在,如何从BackStack恢复片段

我正在学习如何使用片段。 我有三个Fragment初始化在顶部的实例。 我将这个片段添加到这样一个活动中: 声明和初始化: Fragment A = new AFragment(); Fragment B = new BFragment(); Fragment C = new CFragment(); 更换/添加: FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.content_frame, A); ft.addToBackStack(null); ft.commit(); 这些片段正常工作。 每个片段都附加到活动中,并保存到后端堆栈,没有任何问题。 所以当我启动A , C和B ,堆栈如下所示: | | |B| |C| |A| ___ 而当我按下“后退”button, B被销毁, C被恢复。 但是,当我第二次启动片段A时,不是从后端堆栈恢复,而是在后端堆栈的顶部添加 | | |A| |C| |A| ___ 但是我想恢复A并且销毁所有的碎片(如果有的话)。 其实,我只是喜欢默认的后退堆栈行为。 我如何做到这一点? 预计:( A应该恢复,顶部碎片应该被销毁) […]

获取当前显示的片段

我正在玩Android的片段。 我知道我可以通过使用下面的代码来改变片段: FragmentManager fragMgr = getSupportFragmentManager(); FragmentTransaction fragTrans = fragMgr.beginTransaction(); MyFragment myFragment = new MyFragment();//my custom fragment fragTrans.replace(android.R.id.content, myFragment); fragTrans.addToBackStack(null); fragTrans.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); fragTrans.commit(); 我的问题是,在一个Java文件中,如何获取当前显示的片段实例?