首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我在fragment中滚动列表视图时,如何隐藏ViewPager和tabs的activity中的布局内容?

当在fragment中滚动列表视图时,可以通过以下步骤隐藏ViewPager和tabs的activity中的布局内容:

  1. 获取到activity中的ViewPager和tabs布局对象。
  2. 在fragment中的滚动监听事件中,根据滚动的位置来控制ViewPager和tabs布局的显示与隐藏。
  3. 在滚动监听事件中,可以使用setVisibility()方法来设置ViewPager和tabs布局的可见性,将其隐藏或显示。
  4. 在需要隐藏ViewPager和tabs布局时,将它们的可见性设置为View.GONE,即隐藏布局并且不占用空间。
  5. 在需要显示ViewPager和tabs布局时,将它们的可见性设置为View.VISIBLE,即显示布局。

以下是示例代码:

代码语言:java
复制
// 获取activity中的ViewPager和tabs布局对象
ViewPager viewPager = getActivity().findViewById(R.id.viewPager);
TabLayout tabLayout = getActivity().findViewById(R.id.tabLayout);

// 在fragment中的滚动监听事件中隐藏ViewPager和tabs布局
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {
        // 滚动状态改变时的处理
    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
        // 滚动时的处理
        if (firstVisibleItem == 0) {
            // 当滚动到列表视图的顶部时,显示ViewPager和tabs布局
            viewPager.setVisibility(View.VISIBLE);
            tabLayout.setVisibility(View.VISIBLE);
        } else {
            // 当滚动到列表视图的其他位置时,隐藏ViewPager和tabs布局
            viewPager.setVisibility(View.GONE);
            tabLayout.setVisibility(View.GONE);
        }
    }
});

这样,在fragment中滚动列表视图时,根据滚动位置的变化,可以动态地隐藏或显示activity中的ViewPager和tabs布局内容。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发笔记(一百零一)滑出式菜单

办法肯定是有的,《Android开发笔记(三十五)页面布局视图,我们提到marginpadding都可用来设置空隙,空隙数值都是正数,其实空隙值也能是负数,负数表示该视图隐藏了一部分,仿佛一张纸插了部分纸面到书中...2、菜单默认左边页,内容默认右边页,所以首次加载视图,页面要自动滑到右边内容页(调用scrollTo方法滚动内容页)。...问题症结在于菜单布局内容布局都在同一个页面,所以极易造成滑动冲突,要想彻底解决滑动冲突,最好还是把两种布局分开到不同页面处理,技术上便是使用不同Fragment分别放置菜单内容布局。...Fragment,然后SlidingMenu也采用Fragment区分菜单布局内容布局,因此如果把ViewPager作为内容布局,就会产生Fragment嵌套情况。...即ViewPager自身就是作为内容布局Fragment嵌入到SlidingMenu,然后ViewPager子页面也是作为Fragment嵌入到ViewPager,这样就造成了一个问题:Fragment

1.2K70

模板代码 - 列表下拉刷新

//values/style.xml里:actionbar_tab_indicator内容省略,官方文档有,很罗嗦。...())); 布局文件,ViewPager内放置android.support.v4.view.PagerTabStrip控件,这样可以显示ActionBartabs为特殊样式,就是一直显示...“左、、右” 3个tab指示器,左右滑动ViewPager切换Fragment,或者点击tab标签左右滚动来显示更多其它tab。...为显示“应用信息”列表条目定义AppInfoViewHolder,它包含一个nameicon,布局文件item_appinfo是简单ImageViewTextView,其ViewHolder定义如下...上面的LoadMoreViewHolder显示了使用ViewHolder来管理每个列表条目对应View是非常方便,这样可以让ListView每个条目的创建、状态修改代码都集中一个类,如果不是使用

2.9K50

一个Demo学会用Android兼容包新控件

、FloatingActionButton用法,以及Toolbar渐变隐藏动画效果; 官方Tabs组件TabLayoutViewPager结合实现主界面内容区域; SwipeRefreshLayout...本例,TabLayout界面滚动,随着Toolbar逐渐隐藏,将占据Toolbar位置, 达到节省屏幕空间,界面动画效果目的。...enterAlwaysCollapsed: 当你视图已经设置minHeight属性又使用此标志,你视图只能以最小高度进入,只有当滚动视图到达顶部才扩大到完整高度。...exitUntilCollapsed: 当视图会在滚动,它一直滚动到设置minHeight完全隐藏。...-- Tabs选项卡,ViewPager搭配使用可以增大界面的内容展示量,实现各种个性化分类内容展示而不互相干扰!

1.5K40

ViewPagerFragment状态保存哪些事

引言 使用 ViewPager , 如果我们适配器使用是 FragmentStatePagerAdapter ,那么当我们重新滑到之前已销毁页面,一般情况下页面的状态依然将保持不变(比如...RecyclerView 滚动位置等,EditText 输入内容 等), 或者说 View 历史状态被还原了。...但当我们重新切换到 1 ,可以发现,Fragment1 RecyclerView 滚动位置 没有变化,所以可以证明 Fragment 状态的确是被还原了。 那这是怎么做呢?...状态信息,并且以下标的方式进行了保存,当我滑动 ViewPager ,其会加载并初始化指定 position 所对应 Fragment ,并将缓存 Fragment 状态信息 set 进去...Fragment部分 通过上面的方式,我们可以简单知道 ViewPager如何帮我们进行状态还原与保存,那 Fragment 到底是什么时候去使用这个状态呢?

1.3K20

TabLayout+ViewPager+Fragment实现切页展示「建议收藏」

具体会在下一小节介绍,TabLayout+ViewPager+Fragment方法使用流程: 创建存储多个Fragment实例列表 创建PagerAdapter实例并关联到ViewpagerViewPager...ViewPager还有一个比较重要函数是: viewPager.setOffscreenPageLimit(int limit); 这个方法默认值为1,Google开发ViewPager,考虑到如果滑动时候才创建...本小节最后,告诉大家一个关于如何选择PagerAdapter结论: FragmentPagerAdapter适用于Fragment比较少情况,它会把每一个Fragment保存在内存,不用每次切换时候...其实ViewPager+Fragment方式,ViewPager显示就是Fragment中所创建View,Fragment只是一个控制器,并不会直接显示于ViewPager之中,这一点容易被忽略...暂时想到优化方案就只有这么多了。 总结 本文主要讲述两个部分知识:三驾马车实现切页展示基础方法以及如何优化性能表现避免卡顿。

2.3K10

是时候开始用C#快速开发移动应用了

Activity 之间数据传递 多线程 Layout与Widget Android页面视图由XML来声明,而所有页面的这些UI组件都由一个布局(Layout)来组织。...这里不太想给大家展示太多关于UI层代码,如果感兴趣同学可以直接到我GitHub里面去下载。我们主要看一下C#如何ViewPager里面放视图同时与TabLayout关联起来。...只需要3步: 找到tabview控件 通过TabAdapter给ViewPager设置视图ViewPager绑定到tab var tabs = FindViewById(Resource.Id.tabs...Activity 之间数据传递   AndroidLayout与Activity大家可以理解为webform.aspx页面与.aspx.cs code behind。...只是Activity我们还需要手动通过FindViewById来找到这个UI组件。如果Activity代表了一整个View,那我们来看看在不同View之间如何传递数据。

2.5K60

Android TabLayout 使用进阶(含源码)

同样为了方便演示我这里MainActivity布局只放按钮,方便根据不同使用方式进入不同页面进行相应演示。下面修改activity_main.xml。 <?...分析一下可能就是TabLayout + ViewPager + Fragment构成,这三个组合在写分类页面App主页面稍有不同,文中都会讲到,莫急。...、下划线为透明,选中文字颜色为蓝色,默认是灰色,刚才创建四个图标样式文件类似,选中切换蓝色图片,未选中灰色图片。...现在还不能运行,因为缺少一个入口,这个入口依然MainActivityactivity_main.xml添加一个按钮: <Button android:text="主页面...像这种商品分类页面里面的<em>布局</em>都是一样<em>的</em>,不同<em>的</em>只是数据而已,而这个数据也是可以变化<em>的</em>,因此你不能写死数据<em>和</em><em>Fragment</em>,因此就需要动态来生成。

2.7K33

Android入门教程 | Fragment 基础概念

可复用,页面布局可以使用多个Fragment,不同控件内容可以分布不同Fragment上。 使用Fragment,可以少用一些Activity。...在此情况下,需列表布局创建包含 RecyclerView 片段。...(本例,此值为 false,因为系统已将扩展布局插入 container,而传递 true 值会在最终布局创建一个多余视图组。) 接下来,需将该片段添加到您 Activity 。...可以通过两种方式向 Activity 布局添加片段(以下为代码片段,并非完整代码)。 静态方式 Activity 布局文件内声明片段。 本例,您可以将片段当作视图来为其指定布局属性。...FragmentActivity之间是如何传值 ActivityFragment传值: 将要传值,放到bundle对象里; Activity创建该Fragment对象fragment, 通过调用

3.5K40

底部导航栏几种实现方式

Activity要思考问题: 1)Fragment什么时候初始化add到容器? 2)Fragment什么时候hideshow? 3)如何让TextView被选中?...PS:这里四个TextView属性是重复,你也可以自行抽取出来,编写一个style,设置下~ 隐藏顶部导航栏 如果继承是AppCompatActivity,以前Activity调用requestWindowFeature...同TextView方式 Step 4:创建一个Fragment简单布局与类 ,直接使用TextView~ Step 5: 主布局Activity编写 package com.turing.base.activity.fragment.fragmentPractice2...这是为了确保 finishUpdate(viewGroup)返回视图能够被移除。...分析 导航栏显示图片 导航TAB下横线颜色 ,可以自定义style设置tabIndicatorColor来决定,如果要显示TAB,textAllCaps需要设置为false。

2.1K40

Carson带你学Android:底部顶部Tab导航栏快速实现-TabLayout+ViewPager+Fragment

底部Tab菜单栏实现(FragmentTabHost+ViewPager+Fragment) 今天我手把手教大家如何使用TabLayout+ViewPager+Fragment组合来实现顶部底部...注: 1.ViewPager类直接继承了ViewGroup类,LinearLayout等布局一样,都是一个容器,需要在里面添加我们想要显示内容。...,接收它自己事件,并可以activity运行时被添加或删除 3.Fragment不能独立存在,它必须嵌入到activity,而且Fragment生命周期直接受所在activity影响。...例如:当activity暂停,它拥有的所有的Fragment们都暂停了,当activity销毁,它拥有的所有Fragment们都被销毁。...只需要在上面步骤5:定义主布局activity_main.xml中将TabLayoutViewPager位置交换就可以了!

1.5K20

使用TabLayout看这篇就够了

首先TabLayout一般都是配合Viewpager使用ViewpagerFragment随着顶部Tab一起联动,这种场景再熟悉不过了。...所以当我需求能够明确知道Tab个数,可以xml里直接添加TabItem。但是但是,心细你不知道有没有发现问题,我在上面的代码,tab明明设置小写,但是运行出来确是大写: ?...我们知道,Tab是使用adaptergetPageTitle()方法做其显示内容,这个方法返回类型为CharSequence。...我们先把setupWithViewPager()方法注掉看看会如何: ? 好像ViewPagerTabLayout之间纽带断了,不会联动了。...那我们就模仿setupWithViewPager()方法源码让它们联动起来。我们要做就是点击TabLayout时候ViewPager会跟着滚动

2.8K30

首页-底部&顶部Tab导航(菜单栏)实现:TabLayout+ViewPager+Fragment

详情请看 底部Tab菜单栏实现(FragmentTabHost+ViewPager+Fragment) 今天我手把手教大家如何使用TabLayout+ViewPager+Fragment组合来实现顶部底部...注: 1.ViewPager类直接继承了ViewGroup类,LinearLayout等布局一样,都是一个容器,需要在里面添加我们想要显示内容。...2.它具有自己生命周期,接收它自己事件,并可以activity运行时被添加或删除 3.Fragment不能独立存在,它必须嵌入到activity,而且Fragment生命周期直接受所在...例如:当activity暂停,它拥有的所有的Fragment们都暂停了,当activity销毁,它拥有的所有Fragment们都被销毁。...只需要在上面步骤5:定义主布局activity_main.xml中将TabLayoutViewPager位置交换就可以了!

4K20

TabLayout+ViewPager实现切页示例代码

安卓使用TabLayout+ViewPager+Fragment 实现页面切换,可实现左右滑动切换视图界面点击切换 可自定义菜单栏是顶部还是底部 一、实现效果: ?...'com.android.support:design:23.3.0' 主布局文件编写: 顶部或者底部显示,只要更改ViewPagerTabLayout排列顺序即可 <?...); tabLayout.getTabAt(1).select();//设置第一个为选中 } } 2.3 字符图片菜单栏实现 图片加汉字菜单栏,菜单栏每项都是一个视图可以自定义设计 ?...菜单栏每项布局文件设计: 一个图片显示一个文字显示,定义为垂直布局,其中android:layout_gravity=”center”是把控件居中,这里不写,菜单栏显示可能会出现错位 <?...: 布局文件<android.support.design.widget.TabLayout 更改android:layout_height=”70dp”,表示其菜单栏高度改变。

1.7K40

使用CoordinatorLayout打造各种炫酷效果

会 跟着 滚动 事件响应, layout_scrollFlags=“snap”时候 Scroll滑动事件结束以前 ,如果这个View部分可见,那么这个View会停在最接近当前View位置。...,我们可以布局文件里面使用 <android.support.design.widget.TabLayout android:id="@+id/<em>tabs</em>" android:layout_width...主要实现以下功能 - Collapsing title(可以折叠 标题 ) - Content scrim(内容装饰),当我们滑动位置 到达一定阀值时候,内容 装饰将会被显示或者隐藏...,CollapsingToolbarLayout一些重要属性已经讲解完毕,下面我们一起来看一下我们是怎样结合ViewPager实现视差效果 ---- 结合ViewPager视觉特差 布局代码 <...- 对于AppBarLayout,我们主要 讲解了这个属性app:layout_scrollFlags,设置不同 属性我们可以滚动时候显示不同 效果 - 对于CollapsingToolbarLayout

4.9K10
领券