Articles of android fragments

应用程序内容落后于android L中的导航栏

正如您所看到的,我的“Got It”按钮位于导航栏后面。无法修复它! 我努力了 true 以及在布局文件中设置它。 我在21世纪的主题是: true false false @null true 与整个应用程序中的所有屏幕相同的情况。 请帮忙。

转换android片段向上滑动

我有一个替换另一个片段的片段。 我想指定animation。 但animation被忽略了。 transaction.replace(R.id.my_fragment, newFrag); transaction.addToBackStack(null); transaction.setCustomAnimations(R.anim.slide_in_up, R.anim.slide_out_up); slide_in_up slide_out_up 我真正想要实现的是新片段从底部滑入。 我的animation被忽略了。 什么是缺少的代码?

在popBackStack之后调用哪种方法?

我有一个活动,我打电话给三个碎片 – 每个碎片相互依赖: A(ctivity) – > f1(片段1,标题{是|应该}:列表) – > f2(片段2,标题{是|应该}:概述) – > f3(片段3,标题{是|应该}:详情) ATM我使用以下方法调用来向后跳转: @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: FragmentManager fragmentManager = getSupportFragmentManager(); if (fragmentManager.getBackStackEntryCount()>0){ fragmentManager.popBackStack(); } } } 这很好用。 我在每个片段中覆盖ActionBar标题,如下所示: ActionBar bar = getSherlockActivity().getSupportActionBar(); bar.setTitle(R.string.title_f3); 当向前导航时(如上所示),这可以完美地工作但向后导航ActionBar的标题未更新: f3(title {is | should}:detail) – > f2(title {is}:detail,{should}:overview) – > f1(title {is}:detail,{should}:list) […]

将youtube集成到片段中

我的活动扩展了另一个活动,包括导航抽屉,每个项目打开一个新的片段。我想将Youtube集成到其中一个片段。以前我使用YouTubePlayerView将Youtube集成到活动中,但这里需要片段。我搜索了net并发现YouTubePlayerFragment将youtube整合到片段中。 但是当我在教程中搜索时,我发现即使使用YouTubePlayerFragment,我们也会扩展YouTubeBaseActivity。这些都是示例.. http://android-coding.blogspot.in/2013/04/example-to-use-youtubeplayerfragment-of。 html http://android-er.blogspot.in/2013/06/example-to-use-youtubeplayerfragment-of.html 我无法理解如何使用YouTubePlayerFragment,以便我的课程扩展Fragment而不是我的项目中所需的YouTubeBaseActivity。正如你可以在下面看到我的课程扩展了另一个活动,包括导航抽屉,其中第五个选项打开YouTube Fragment.I想要在这个片段中播放Youtubevideo。我正在简要介绍我的课程如何 – public class LandingActivity extends BaseGActivity { . . . . public void selectDrawerItem(int position) { Bundle args = new Bundle(); switch (position) { case 0: currentFragment = new HomeFragment_(); args.putString(G.General.MEDIA_TYPE_KEY, G.General.MEDIA_TYPE_ALL); GApplication.getInstance().stopGPlayer(); break; case 1: currentFragment = new HomeFragment_(); args.putString(G.General.MEDIA_TYPE_KEY, G.General.MEDIA_TYPE_PHOTO); GApplication.getInstance().stopGPlayer(); break; // case 2: currentFragment […]

从Android Backstack中删除一个特定片段

对于Android平板电脑应用程序,我使用2个片段。 一个位于屏幕左侧,一个位于右侧。 当您单击右侧片段上的按钮时,将在右侧片段的顶部添加另一个片段。 此片段将添加到Backstack中。 FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.add(R.id.fragmentlayout, fragment2); ft.addToBackStack(“Fragment2”); ft.commit(); 后台现在是: [片段1] – > [片段2] 在左侧还有一个按钮,在左侧片段的顶部打开一个片段(与fragment2相同)并将其添加到Backstack。 现在是靠背 [片段1] – > [片段2] – > [片段3] 片段2是用于关闭该片段的按钮。 getFragmentManager().popBackStack(“Fragment2”, FragmentManager.POP_BACK_STACK_INCLUSIVE); 问题是当我只想关闭[片段2]时,[片段3]也会被破坏。 我可以通过调用删除片段manualy FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction(); ft.remove(fragment2).commit(); 但是后躯将保持不变 [片段1] – > [(幽灵)片段2] – > [片段3] 因此,您需要再按一次才能关闭应用程序。 有没有办法只从背板上移除[片段2]并在屏幕上留下[片段3]?

Android中无头片段和服务有什么区别?

服务 服务是一种应用程序组件,表示应用程序希望在不与用户交互的情况下执行较长时间运行的操作,或者为其他应用程序提供要使用的function。 无头片段 可以在不定义用户界面的情况下使用片段。 建议使用无头碎片进行后台处理。 这有什么区别?

相同活动中的Android两个片段

我知道以下post: 在单个活动中使用多个片段 我正在寻找的是对特定问题的具体答案。 以下代码的结果是一个空白的FragmentActivity。 我在下面的代码中缺少什么来让它呈现一个包含两个片段的活动。 一个是空列表片段,另一个是包含输入框和水平布局按钮的片段(此布局可以在http://developer.android.com/training/basics/firstapp/starting-find – activity.html )我希望绝对放在屏幕的底部,固定高度约为25度。 的Manifest.xml 我的主要活动及其关联的application.xml文件。 package com.my.package; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentTransaction; public class Application extends FragmentActivity implements MessageListViewFragment.OnLineSelectedListener, SendMessageFragment.OnSendButtonPressed { MessageListViewFragment mMessageListFragment; SendMessageFragment mSendMessageFragment; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.application); mMessageListFragment = new MessageListViewFragment(); mSendMessageFragment = new SendMessageFragment(); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.add(R.id.message_fragment, mMessageListFragment); transaction.add(R.id.send_fragment, […]

setAdapter“调用需要API级别11(当前最小值为8):android.widget.AbsListView #setAdapter”?

我在扩展Fragment的类中调用setAdapter()方法。 请注意,我已导入android.support.v4.app.Fragment 。 但是我收到一个错误,指出API级别必须是11级。 我该怎么办才能解决这个问题,而不minSdkVersion=”8″更改为minSdkVersion=”11″ package foo.bar.qux; import java.util.Calendar; import java.util.Date; import org.w3c.dom.Document; import org.w3c.dom.NodeList; import android.support.v4.app.Fragment; import android.app.Activity; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.TextView; public class TabFragmentList extends Fragment { String category, xml; NodeList nodes; int numResults; private ListView lv; Date date; @Override public View onCreateView(LayoutInflater […]

半透明/透明状态栏+ CoordinatorLayout +工具栏+片段

我有以下设置: 我正在使用AppCompat MainActivity,包含一个片段并有一个工具栏,在向下滚动时隐藏 Fragment与RecyclerView 所有适合屏幕的视图都在xml布局中具有相应的android:fitsSystemWindows=”true” 问题是,在这种情况下我无法使状态栏透明。 我所做的是: 创建活动并调用setContent 然后我尝试调整活动以编程方式获得如下的半透明工具栏: @TargetApi(Build.VERSION_CODES.LOLLIPOP) public void themeNavAndStatusBar(Activity activity) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) return; Window w = activity.getWindow(); w.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); w.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); w.setNavigationBarColor(activity.getResources().getColor(android.R.color.transparent)); w.setStatusBarColor(activity.getResources().getColor(android.R.color.transparent)); } 用片段替换活动( @+id/frame_container )中的占位符 在这种情况下,状态栏是纯色的,并且未在其下方绘制视图…为什么? 我想要的是 我想要一个工具栏,它滚动屏幕并完全隐藏,而此工具栏下面的内容应该适合屏幕,并在透明导航栏后面绘制。 布局 这是我的主要活动: 这是我的片段,将放在主要活动中: 编辑 – 截图 我使用浅色/深色基本主题并手工制作主题(因为用户可以选择任何颜色作为主要/强调颜色),所以不要介意工具栏是白色的(它是默认的主题背景颜色和原色)。 我还添加了一个黑色边框,以便您看到活动结束的地方…… 第一个屏幕截图:显示工具栏,没有滚动任何内容 第二个屏幕截图:我刚刚开始滚动=>工具栏现在应该滚动 第三个屏幕截图:主要内容现在应滚动到导航栏下方… 最后,我当然会让工具栏和导航栏半透明,以获得更好的视觉效果……

在重新创建父片段之后获取对子片段的引用

从Android 4.2开始,Android支持嵌套片段 。 doc没有给出关于嵌套Fragment生命周期的大量解释,但从经验来看,它们的生命周期看起来与“常规” Fragments非常相似。 看起来有一个很大的区别:当调用父Fragment onCreate方法时,不会恢复子Fragments 。 因此,似乎无法保存/恢复对特定Fragment的引用: 使用getChildFragmentManager.findFragmentByTag(String)始终在父Fragment onCreate(Bundle)返回null ,因为mActive为null 。 使用putFragment / getFragment导致NullPointerException因为getFragment查找null mActive ArrayList的大小。 所以,我的问题很简单。 是否有正确的方法来检索父Fragment onCreate方法中对子Fragment的引用?