SlidingMenu简介: SlidingMenu的是一种比较新的设置界面或配置界面效果,在主界面左滑或者右滑出现设置界面,能方便的进行各种操作.目前有大量的应用都在使用这一效果。如Evernote、Google+、Foursquare等,国内的豌豆夹,人人,360手机助手等都使用SlidingMenu的界面方案。 项目下载地址:https://github.com/jfeinstein10/SlidingMenu 注意: SlidingMenu依赖于另一个开源项目ActionBarSherlock,
今天把这项工作完成了,做成了单独的SwipeBackFragment库以及Fragmentation-SwipeBack拓展库
Intent,比如拨打电话 ContentProvider数据库存储数据 Broadcast广播通信 AIDL通信,通过接口共享数据
SlidingMenu 是什么 SlidingMenu 是一个强大的侧边栏导航框架,并且已经被一些比较牛的 App 使用 SlidingMenu 的主要特点 (1) 侧边栏可以是一个Layout,包含任何 View,也可以是一个 Fragment (2) 使用简单方便,支持左滑和右滑等 (3) 自定义侧边栏显示动画 SlidingMenu 常用属性介绍: menu.setMode(SlidingMenu.LEFT);//设置左滑菜单 menu.setTouchModeAbove(SlidingMen
在Android应用开发中,滑动侧边栏经常使用,今天我也试着自己进行了一个简单的实践,虽然功能还不是很强大,但是可以保留下来为以后的开发使用,有需要时在进行简单的修改。实现一个滑动侧边栏思路也很简单:
近期项目原因需要一个上下两屏滑动的效果。可以想象成viewpager左右滑动变成上下滑动。本来想用Srcollview实现,但是由于一些原因,比如按键冲突,和listview布局冲突等等,最后决定自己写一个自定义控件。
SlidingPaneLayout是Android在android-support-v4.jar中推出的一个可滑动面板的布局,在前面《Android开发笔记(一百零一)滑出式菜单》中,我们提到水平布局时的LinearLayout无法自动左右拉伸,必须借助于手势事件才能拉出左侧隐藏的布局,现在SlidingPaneLayout便是为了解决LinearLayout无法自动拉伸的缺陷。只要我们在布局文件的SlidingPaneLayout节点下定义两个子布局,那么页面默认会把第一个子布局作为左侧隐藏面板,一旦用户的手势从左向右滑动,左侧面板就被拉了出来。 SlidingPaneLayout的使用挺简单的,下面是它的几个常用方法: setSliderFadeColor : 设置主页面的阴影渐变色。即拉出左侧面板时,右边主页面的渐变阴影色,主页面变得越小则阴影色救越浓。阴影色默认为灰色。 setCoveredFadeColor : 设置左侧面板缩进去时的阴影渐变色。 setPanelSlideListener : 设置左侧面板的拉出监听器。该监听器实现了下面三个方法: --onPanelClosed : 左侧面板已关闭。 --onPanelOpened : 左侧面板已打开。 --onPanelSlide : 左侧面板在滑动。 openPane : 打开左侧面板。 closePane : 关闭左侧面板。 isOpen : 判断左侧面板是否打开。 下面是使用SlidingPaneLayout的效果截图:
其中BaseFragment.java是另外5个Fragment的基类,代码如下:
来源:LeoLiang 链接:http://www.cnblogs.com/lao-liang/p/4941653.html
距离ViewPager2正式版的发布已经一年多了,目前ViewPager早已停止更新,官方鼓励使用ViewPager2替代。 ViewPager2底层基于RecyclerView实现,因此可以获得RecyclerView带来的诸多收益:
在Android开发中,底部菜单是经常要使用的,如微信、微博、支付宝等,实现底部菜单有好几种方式,大致分为: 通过TabWidget实现 隐藏TabWidget,通过RadioGroup和RadioButton实现底部菜单栏 通过FragmentTabHost实现 通过5.0以后的TabLayout实现 通过最近推出的 Bottom navigation ---- 本文的主题是 ViewPager+Fragment+FragmentTabHost 实现底部菜单 1、构造4个Fragment,每个布局类似如下
SlidingMenu作为最常用到的几个开源项目之一,最初,这个是在IOS上有的,之后被应用到了android上,在google自己原生态的侧拉菜单NavigationDrawer没出现之前,这个效果已经被很多应用所使用。比如今日头条,网易新闻,人人客户端等等。 由于最近项目用到,所以把相关使用和配置记录下来。 Github上的下载地址为:下载地址 国外用到该库的应用APP: Foursquare LinkedIn Zappos Rdio Evernote Food Plume VLC for Androi
最近工作中UI给出如图设计,心想这个结合viewpager,fragment,FragmentPagerAdapter就能构建出来.
FragmentPagerAdapter是android-support-v4支持包里面出现的一个新的适配器,继承自PagerAdapter,是专门用来给支持包中出现的ViewPager进行数据适配的。
滑出式菜单从界面上看,像极了一个水平滚动视图HorizontalScrollView,当然也可以使用HorizontalScrollView来实现侧滑菜单。不过今天博主要说的是利用线性布局LinearLayout来实现,而且是水平方向上的线性布局。 可是LinearLayout作为水平展示时有点逗,因为如果下面有两个子视图的宽度都是match_parent,那么LinearLayout只会显示第一个子视图,第二个子视图却是怎么拉也死活显示不了。倘若在外侧加个HorizontalScrollView,由于HorizontalScrollView的宽度只能是wrap_content,因此子视图的宽度也只能是wrap_content而不能是match_parent了,故而HorizontalScrollView做不到子页面全屏的效果。 现在我们既希望两个子视图的宽度是match_parent,又希望能够拖动两个子视图,还有没有办法呢?办法肯定是有的,在《Android开发笔记(三十五)页面布局视图》中,我们提到margin和padding都可用来设置空隙,空隙的数值都是正数,其实空隙值也能是负数,负数表示该视图被隐藏了一部分,仿佛一张纸插了部分纸面到书中,于是只有一部分露了出来。具体到LinearLayout的编码实现,对应的便是LinearLayout.LayoutParams的leftMargin参数,若该参数为正数,则视图页面拉出了一段空白;若该参数为负数,则视图页面隐藏了一段内容;若该参数是该视图宽度的赋值,则表示视图页面完全隐藏了起来,跟visible="gone"的效果类似。 所以我们可以给视图添加触摸监听器OnTouchListener,在触摸坐标发生变化的同时,给菜单子页面隐入隐出对应的宽度,从而达到抽屉式拉出菜单的效果。一旦触摸弹起,根据手势滑动的距离,判断当前是要拉出整个菜单,还是缩回才拉出一部分的菜单。这个判断可按照滑动偏移是否达到屏幕一半宽度的条件,至于自动拉出或者自动缩进的动画,可由Runnable来定时刷新视图的leftMargin参数。 下面是一个简单侧滑的效果截图:
最近的项目使用到了ViewPager + Fragment的模式,要求在每次Fragment获取显示的时候来刷新数据,该项目下ViewPager有5个子fragment,在onCreateView及fragment的setUserVisibleHint(bool isVisibleToUser)中的isVisibleToUser为true的时候刷新数据的时候出现数据多次刷新的情况,因此对ViewPage + Fragment的生命周期做了研究。
给ListView的条目设置点击事件,setOnItemClickListener()方法,参数:上下文
Viewpager 获取当前显示的fragment 使用 getSupportFragmentManager().findFragmentByTag()方法 Viewpager + FragmentPagerAdapter 情况下 才好使; FragmentPagerAdapter 有一个特点 凡是加载过的Fragment 都会被保留,既然Fragment不会被销毁,那我们就可以使用findFragmentByTag() 方法找到它;但问题是动态创建的话 tag的设置;我们知道动态加载时是可以设置tag的,
这是一个比较常见的APP首页的结构,侧边栏+主页,侧边栏里是一些菜单,主页由底部菜单控制内容区,内容区是可滑动的子页面。整体比较舒服合理,各自为阵,却又能关联在一起,加上又是大众喜爱的Material Design风格,所以成为了当下APP首页的主流结构。
当ViewPager切换到当前的Fragment时,Fragment会加载布局并显示内容,如果用户这时快速切换ViewPager,即Fragment需要加载UI内容,而又频繁地切换Fragment,就容易产生卡顿现象(类似在ListView快速滑动的同时加载图片容易卡顿)。
Android开发中使用底部菜单栏的频次非常高,主要的实现手段有以下: - TabWidget - 隐藏TabWidget,使用RadioGroup和RadioButton - FragmentTabHost - 5.0以后的TabLayout - 最近推出的 Bottom navigation
今天带大家来探索下如何用Fragment+FragmentTabHost++ViewPager实现底部菜单栏
从一个完整的屏幕移动到另一个屏幕的过程被称为屏幕滑动,在安装向导、幻灯片中应用广泛。下面介绍如何利用Android Support库的ViewPager来实现屏幕滑动。
而关于viewpager的addOnPageChangeListener方法监听中
从官方文档中我们可以看到: CoordinatorLayout是一个增强型的FrameLayout。 两个作用: - As a top-level application decor or chrome layout - As a container for a specific interaction with one or more child views
前言:前几篇文章讲解了ViewPager的普通实现方法,但android官方最推荐的一种实现方法却是使用fragment,下面我们使用fragment来重新实现一下第一篇《ViewPager 详解(一)—基本入门》所实现的效果。
建立ViewPage的步骤: 1. 在XML布局中加入android.support.v4.view.ViewPager:
ViewPager2从名字就可以看出来它是ViewPager的升级版,既然是升级版那么它相比ViewPager有哪些新变化呢? 添加依赖,目前ViewPager2的最新稳定版本是1.0.0(20210525)。1.1.0-alpha01 不稳定
在android开发中,左右侧滑菜单的开发已成为我们现在开发的必备技术之一,再次之前,我没有做过相类似的demo,但是项目的开发有要求有这样的效果,而且大家都知道,虽然网上由开源的代码,但是不仅种类多,看着一个头两个大,而且代码不好分离。因此我们无法简化成自己的demo,为此,还查阅了很多别人的资料,最后做出了自己想要的效果,具体效果如下所示:
高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 上次,已经完成了头部新闻分类栏目的拖动效果。 这篇文章是继续去完善APP 今日头条 这个新闻阅读器的其他功能。 这次所实现的功能清单: 1.通过SlidingMenu实现左右侧拉菜单效果 2.通过重写CompoundButton实现--昼夜模式切换按钮效果。 3.通过PopupWindow控件实现了列表中更多菜单弹框操作效果。 4.通过universal-image-loader库实现了图片的加载和缓存。 5.通
Viewpager默认会缓存临近操作的两个页面,也就是至少会缓存一个页面。但我们有时候的需求是需要当滑动到相应页面后再去更新数据,比如网络请求这种,可能你会说,那直接在onResumel里请求数据不就行了,但是ViewPager预加载机制在你处于前一个页面时,已经加载好了下一个页面。当然你也可以将所有页面全部缓存,但这样所消耗的内存不言而喻,而且如果数据过多,第一次进去的时候的速度不可估量。所以这次我们使用懒加载来实现我们的需求。 Fragment 提供了 setUserVisibleHint 方法检测
以上就是实现Android ViewPager左右滑动的实例,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文为大家分享了Android Studio实现滑动菜单Tab效果的具体代码,供大家参考,具体内容如下
本文将更进一步, 在很多实际的应用场景中我们需要一个更复杂的场景,比如说需要在一个菜单选项中集成多个tab来集中显示信息。这个时候 Viewpager就派上用场了。 本例中我们将通过SlidingMe
Android开发中使用顶部 & 底部Tab导航栏的频次非常高,主要的实现手段有以下:
在AndroidX之前的Fragment , 由于配合ViewPager使用 , 在Fragment添加到ViewPager上后 , 生命周期会跟Activity绑定 , 所以导致Fragment在不可见的时候 , onStart/onResume也会被回调 .
listview的数据显示请见Android Studio获取SQLite数据并显示到ListView上Fragment+ViewParger实现界面加载 首先要创建两个类并继承Fragment,在viewpager中实现显示时使用。
下载SlidingMenu,https://github.com/jfeinstein10/SlidingMenu
目录介绍 01.先来看一下需求 02.有几种实现方式 2.1 使用ViewPager 2.2 使用RecyclerView 03.用ViewPager实现 3.1 自定义ViewPager 3.2 ViewPager和Fragment 3.3 修改滑动距离翻页 3.4 修改滑动速度 04.用RecyclerView实现 4.1 自定义LayoutManager 4.2 添加滑动监听 4.3 监听页面是否滚动 4.4 attach和Detached 05.优化点详谈 5.1 ViewPager改变滑动速率 5
Viewpager,视图翻页工具,提供了多页面切换的效果。Android 3.0后引入的一个UI控件,位于v4包中。低版本使用需要导入v4包,但是现在我们开发的APP一般不再兼容3.0及以下的系统版本,另外现在大多数使用Android studio进行开发,默认导入v7包,v7包含了v4,所以不用导包,越来越方便了。
Hi,各位花粉们,上一节Android中最最常用—Fragment基础篇最详解,我们详细的介绍了 Fragment的基本原理及使用、 Fragment中的常用方法等。在这一节,将结合具体的使用场景,来更加全面的介绍 Fragment的日常使用。
在现在的APP的应用中,类似仿美团APP的底部滑动菜单,应用是挺多的,例如QQ,微信,支付宝都应用到。开发流程如下
前言,一天在点外卖的时候,注意到饿了么列表页的滑动效果不错,但是觉得其中的手势滑动还是挺复杂的,正好又碰到了在熟悉Touch事件的理解当中,所以就抽空对着饿了么的列表页面尝试写写这个效果
App在页面底部展现标签栏导航的效果,有多种实现方式,包括TabActivity方式、ActivityGroup方式、FragmentActivity方式等等,具体的实现方案参见之前的博文《Android开发笔记(十九)底部标签栏》。 一般情况下这种底部标签栏能够满足大部分的业务需求,然而有时客户的口味比较独特,固定的几款套餐已经不能满足她的胃口了。比如客户要求做成自助餐形式,同时长条的固定餐台也要换成可以滑动的餐台,因为固定餐台还得客户左右移步才能夹菜,可滑动的餐台就无需客户再走来走去。那么对应到底部标签栏这里,便是要求标签页的个数允许定制,并且每个页面除了可以通过标签页的点击操作进行切换之外,也允许通过左右滑动来切换。
https://github.com/Blankj/AndroidUtilCode
Fragment(碎片) 拥有生命周期,含有视图,可视可交互的界面 。 本文源码可见此处 1.Fragment和Activity生命周期的测试 --- Fragment和Activity生命周期 --- Fragment和Fragment切换时生命周期 --- Fragment与嵌套的子Fragment的生命周期 2.Fragment和Activity或其他Fragment数据传递 --- Activity --> Fragment --- Fragmen
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/48687389
领取专属 10元无门槛券
手把手带您无忧上云