DrawerLayout是Android V4包下一个带有侧滑功能的布局控件,可以根据手势展开与隐藏侧边栏,也可以随着侧边栏的点击改变主界面区的内容。...一、约定的抽屉布局 DrawerLayout的布局一般分为三个部分:第一部分为主界面内容布局,第二部分为左边侧滑界面布局,第三部分为右边侧滑界面布局。...那么系统是怎么区分左边侧滑和右边侧滑的代码块的呢?...DrawerLayout中主内容区的布局要放到最顶层,接着放置左边侧滑界面布局,最后放置右边侧滑界面布局。...和一般的侧滑菜单相比,DrawerLayout的侧滑效果会浮现在主界面的上方,而不像其他侧滑菜单,不会遮挡主界面。 以上就是本文的全部内容,希望对大家的学习有所帮助。
本文实例为大家分享了DrawerLayout结合Tollbar实现菜单侧滑的具体代码,供大家参考,具体内容如下 ?...DrawerLayout(抽屉布局):谷歌官方的控件,可以简单的实现侧滑菜单; 此Demo主要是DrawerLayout结合Toolbar实现侧滑左上角返回键实现动画效果,点击左上角返回键实现动画效果并且滑出滑入侧滑菜单...-- 左边的侧滑箭头指示 是否翻转,颜色-- <style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle"...:该方法会自动和actionBar关联, 将开关的图片显示在了action上,如果不设置,也可以有抽屉的效果,不过是默认的图标 mDrawerToggle.syncState(); //第三步:设置抽屉滑出来...,和滑进去的监听 mDrawerLayout.setDrawerListener(mDrawerToggle); 以上就是本文的全部内容,希望对大家的学习有所帮助。
DrawerLayout 作者:飞龙 DrawerLayout是android.support.v4中提供的控件,用于实现边栏和侧滑效果。...大家在各种 APP 中看到的左侧边栏就是这个控件。 ? 创建 DrawerLayout 最好是界面的顶级布局,否则可能出现触摸时间被屏蔽的问题。它拥有两个子元素,第一个是主内容,第二个是菜单内容。...主内容区的布局代码必须放在侧滑菜单布局的前面, 因为 XML 元素按 z 序(层叠顺序)排列,并且抽屉式导航栏必须位于内容顶部。...菜单布局必须设置layout_gravity属性,它表示侧滑菜单的滑出方向。...* 抽屉打开的时候,点击抽屉,drawer的状态就会变成STATE_DRAGGING,然后变成STATE_IDLE */ @Override public void onDrawerStateChanged
’,默认是’left’; contentComponent: 用于呈现抽屉导航器内容的组件,例如导航项。...接收抽屉导航器的 navigation 属性 。默认为DrawerItems。...有关详细信息,请参阅下文; contentOptions: 配置抽屉导航器内容,见下文; useNativeAnimations: 是否启用Native动画,默认启用; drawerBackgroundColor...drawerLabel:侧滑标题; drawerIcon:侧滑的标题图标,这里会回传两个参数: {focused: boolean, tintColor: string}:...第二步:配置navigationOptions: DrawerNavigator的navigationOptions有两个关键的属性,tabBarLabel标签与tabBarIcon图标: Page4:
前言 侧滑手势在Android App应用得非常广泛,常见的使用场景包括:滑动抽屉、侧滑删除、侧滑返回、下拉刷新以及侧滑封面等。...//抽屉效果 //可以设置横向(左右两侧)的抽屉为同一个view //也可以为不同方向分别设置不同的view .setHorizontalDrawerView(menuLayout...一行代码添加带联动效果的滑动抽屉 抽屉显示在主view之下 SmartSwipe.wrap(view) .addConsumer(new SlidingConsumer()) .setHorizontalDrawerView...(application, null); 一行代码添加下拉刷新功能 可用于任意view //xxxMode第二个参数为false,表示工作方向为纵向:下拉刷新&上拉加载更多 //如果第二个参数设置为true...false).setDataLoader(loader); 样式 效果图 drawerMode behindMode scaleMode translateMode header和footer可使用第三方炫酷的自定义
前言 做过安卓原生开发的童鞋们应该都做过侧边栏这个东西,而且对于开源框架SlidingMenu和android官方侧滑菜单DrawerLayout应该都不陌生。...那么今天也在这里给大家介绍一下React-Native中的侧滑菜单DrawerLayoutAndroid和第三方框架react-native-side-menu。...抽屉(通常用于导航切换)是通过renderNavigationView方法渲染的,并且DrawerLayoutAndroid的直接子视图会成为主视图(用于放置你的内容)。...drawerWidth number 指定抽屉的宽度,也就是从屏幕边缘拖进的视图的宽度。...第二步 引入: import SideMenu from 'react-native-side-menu'; 第三步 使用: import SideMenu from 'react-native-side-menu
github地址:https://github.com/shuaijia/MaterialDesignProject 简介 DrawerLayout是Support Library包中实现了侧滑菜单效果的控件...; DrawerLayout分为侧边菜单和主内容两个部分,侧边菜单可以根据手势或点击控制展开与隐藏,主内容区可随菜单点击而切换(自己实现); DrawerLayout 提供 当界面弹出的时候,主要内容区会自动背景变黑...,当点击内容区的时候,抽屉布局会消失 在屏幕边缘手势滑动 会拉出抽屉布局 注意:当按后退键的时候,如果抽屉布局正在显示,则需要关闭抽屉布局 效果 ?...注意:在侧滑菜单区必须设置 android:layout_gravity 这个属性,只要布局中设置了android:layout_gravity,它就是侧滑菜单,当然,它可以是任一View或ViewGroup...点击事件穿透问题 DrawerLayout界面点击事件穿透问题,即点击Drawerlayout上面的区域,会发现该位置DrawerLayout覆盖掉的区域的控件可以被点击 解决方法:在抽屉完全打开时设置
(2)TabNavigator:类似底部导航栏,用来在同一屏幕下切换不同界面 (3)DrawerNavigator:侧滑菜单导航栏,用于轻松设置带抽屉导航的屏幕 ?...默认为左侧位置 contentComponent - 用于呈现抽屉内容的组件,例如导航项。 接收抽屉的导航。...默认为DrawerItems contentOptions - 配置抽屉内容 initialRouteName - 初始路由的routeName order - 定义抽屉项目顺序的routeNames数组...- 当您的标签是字符串时,要覆盖内容部分中的文本样式的样式对象 二、案例 2.1StackNavigation案例 集成第三方库 使用npm安装react-navigation库,--save表示将该组件写入到...下面是HomeScreen中的代码。ChatScreen是第二个导航界面。
在主屏幕上使用 bottom app bars ,其中包含 navigation menu control 和突出的操作(如FAB)。 在 bar 的另一侧至少可以放置一个,最多两个操作。...不要将 FAB 放在 bottom app bar 外面,因为很难够到 ---- 行为 布局 为了支持 app 不同部分的意图,可以更改 bottom app bar 的布局和操作以适合每个屏幕。...例如,屏幕可以根据最适合屏幕内容显示更多或更少的操作。 ? 为展示主要操作,此 bottom app bar 在其主屏幕上使用 FAB 居中的布局。...查看消息时,bottom app bar 布局更改为“FAB 在尾部”布局以适应其他上下文操作。...底部的导航抽屉从底部的应用栏打开。 抽屉在底部应用程序栏前打开,并显示顶部应用程序栏以在达到完整高度时关闭抽屉。
drawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。...同时在DrawerLayout内部添加两个view: 添加一个View,它包含应用的主内容(当抽屉隐藏时你的主要布局); 添加另一个View它包含了导航抽屉; 如下面例子所示:该布局使用了DrawerLayout...: 主内容View(FrameLayout在最上层)必须是Drawerlayout的第一个子节点因为XML在安排这些界面的时候是按照Z轴的顺序来安排的 同时 抽屉必须在主内容的顶部。...主内容View被设置成匹配父View的宽和高,因为当导航抽屉隐藏的时候它要填充整个UI。...为了保证用户无论怎样都能看到主内容的一部分,导航抽屉的宽度不能超过320dp 初始化Drawer List 在你的Activity中,要做的第一件事是初始化导航抽屉的列表项。
如果为null则使用当前系统区域 localizationsDelegates Iterable> 本地化委托,用于更改Widget默认的提示语...,按钮text等 localeListResolutionCallback LocaleListResolutionCallback 该回调负责在应用启动时以及用户更改设备的区域设置时选择应用的区域设置...persistentFooterButtons List 在底部显示的一组按钮 drawer Widget 开始部分的(左边)抽屉菜单 endDrawer Widget 结束部分的(右边...)抽屉菜单 drawerScrimColor Color 打开侧滑菜单时遮盖在主要内容区的蒙层颜色 backgroundColor Color 内容的背景颜色。...、title和actions等内容。
目光呆滞,今日不宜学习~ 2、题目 首先看一下题目, 说到这里,就来说一下本题的关键,数字是在 1-n 之间的,只有一个重复数字! 同时有四个限制条件: 不能更改原数组(假设数组是只读的)。...这里使用的方法还是二分法,不过引申出一个原理,就是——抽屉原理。 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面放不少于两个苹果。...如果 cnt 大于 mid,依然根据抽屉原理,重复元素就应该在区间 [left, mid] 里,否则在区间 [mid+1, right]。 为啥是 mid+1,这个前面讲过了,自己去翻一翻吧。..., cnt 代表小于等于猜测的元素的数量,mid 虽然是下标但是是猜测元素,这一点很重要,所以二分法的数组不再是原来的数组,而是一个新的数组了,只是没有具体的展示出来。...] 的范围内(因为小于等于 mid 的元素少); 其实通过 cnt 就相当于是完成了数组的排序,把大于 mid 的放在一侧,小于等于的放在另一侧,正常情况下(没有重复元素),cnt 应该是等于 mid,
对于抽屉外部的主要内容,将其包装在material-content元件中或具有material-content样式类的元素中。 固定性抽屉 固定性抽屉是不能关闭的抽屉。 它们完全由CSS提供。...-- Content goes here --> 持久性抽屉 持久抽屉是可以通过动作打开和关闭的抽屉,例如按钮触发器。这些抽屉重新定位内容以适应抽屉的流动。...临时抽屉具有可选的overlay属性,可用于在抽屉打开时在非抽屉内容上方显示透明覆盖。...-- Content goes here --> 在另一侧显示抽屉 所有抽屉都有一个HTML属性end,它将抽屉定位在页面的另一侧,正常(LTR的右侧,RTL的左侧...当可堆叠抽屉打开时,任何现有的可堆叠抽屉将被展开以填充背景中的屏幕。 适用于延期内容。 Inputs: visible bool 抽屉的可见性。
我们尝试下把他们收到侧边栏里,或者叫安卓团队给它的名字“侧边抽屉导航”。...但从另外一个角度来说,没有那一排tab导航,让设计看上去干净多了,把导航放进侧边抽屉里,让主内容区域有了更大的空间余地。 侧边抽屉导航这种设计模式兴起于18个月前。...6个月后,zeebox经历了不少的改变,我们有了一个新的“我的TV”页面,它的内容内容更丰富,包括了订阅和广告,是对于用户来说很重要的一个页面。...为了让更多的内容展现在这个页面里,我们又想到了尝试侧导航。基于之前的经历,这一次,我们决定使用一种更聪明的办法,A/B test去测试。...我的建议是,如果应用主要的功能和内容都在一个页面里面。只是一些用户设置和选项需要显示在其他页面里。处于让主页面看上去干净美观的目的可以把这些辅助功能放在侧边栏里。
谷歌官方推出了一种侧滑菜单的实现方式(抽屉效果),即 DrawerLayout,这个类是在Support Library里的,需要加上android-support-v4.jar这个包。...使用注意点 1、DrawerLayout的第一个子元素必须是默认内容,即抽屉没有打开时显示的布局(如FrameLayout),后面紧跟的子元素是抽屉内容,即抽屉布局(如ListView)。...抽屉菜单的宽度应该不超过320dp,这样用户可以在菜单打开的时候看到部分内容界面。...解决办法:在include进的那个布局里面,添加clickable=true 2、除了抽屉的布局视图之外的视图究竟放哪里 左、右抽屉和中间内容视图默认是不显示的,其他布局视图都会直接显示出来,但是需要将其放在...3、去除左右抽屉划出后内容显示页背景的灰色?
如果已经了解SmartSwipe的功能,只是想了解他的实现原理 可跳过第一节,直接看第二节的原理介绍 一、 用法及演示 1.1 一行代码实现全局侧滑返回 //仿手机QQ的手势滑动返回 SmartSwipeBack.activityStayBack...false,表示工作方向为纵向:下拉刷新&上拉加载更多 //如果第二个参数设置为true,则表示工作方向为横向:右拉刷新&左拉加载更多 SmartSwipeRefresh.drawerMode(view...4个方向 .addConsumer(new DrawerConsumer()) //设置横向(左右两侧)的抽屉为同一个view(常见的侧滑显示删除按钮的功能) .setHorizontalDrawerView...在官方支持库中,滑动抽屉相关的SlidingPaneLayout和DrawerLayout,以及CoordinatorLayout布局相关的BottomSheetBehavior和SwipeDismissBehavior...(如:滑动抽屉) 拦截这个ViewGroup的touch事件,并将touch事件转换为侧滑距离交给SwipeConsumer进行消费 SwipeConsumer根据侧滑距离的变化对控件布局进行相应的改变
导语 侧滑控件,以前大家用的可能是三方的SlidingMenu控件,最近在看谷歌源码项目,意外的看到一个 DrawerLayout 控件。上网一查,原来这个控件是官方给我们提供的一个侧滑菜单控件。...官方中文简介大概如下: DrawerLayout作为窗口内容的顶层容器,允许从窗口的一个或两个垂直边缘拉出交互式“抽屉”视图。...抽屉定位和布局使用android:layout_gravity 子视图对应的属性进行控制,对应于您希望抽屉从哪个侧面出现:左侧或右侧(或支持布局方向的平台版本上的开始/结束)。...请注意,您只能窗口的每个垂直边缘的一个抽屉视图。如果您的布局在窗口的每个垂直边缘配置多个抽屉视图,则会在运行时抛出异常。...以上就是本文的全部内容,希望对大家的学习有所帮助。
DawerLayout 分为侧边菜单和主内容区两部分: 主内容区要放在侧边菜单前面,还有就是主内容区最好以 DrawerLayout 最好为界面的根布局,否则可能会出现触摸事件被屏蔽的问题。...使用的注意事项 主内容视图一定要是 DrawerLayout 的第一个子视图 主内容视图宽度和高度需要 match_parent 必须显示指定侧滑视图的 android:layout_gravity 属性...侧滑视图的宽度以dp为单位,不建议超过320dp(为了总能看到一些主内容视图) 设置侧滑事件:mDrawerLayout.setDrawerListener(DrawerLayout.DrawerListene...从左边滑出的抽屉视图(侧滑栏) 一个简单的从左边滑出侧滑栏的例子。 侧滑栏滑出后,后面的视图会有个阴影。 layout 文件 <?xml version="1.0" encoding="utf-8"?...现在侧边栏放的是RelativeLayout。 也可以放一个RecyclerView。 抽屉出来时推动页面 监听侧滑栏的滑动事件,使用ActionBarDrawerToggle。
DrawerLayout是V4包下提供的一种左滑右滑抽屉布局效果。 实现效果如下: 因为是官方提供的,所以使用起来也相对的比较简单。...DrawerLayout 提供 1、当界面弹出的时候,主要内容区会自动背景变黑,当点击内容区的时候,抽屉布局会消失 2、在屏幕边缘手势滑动 会拉出抽屉布局 注意:当按后退键的时候,如果抽屉布局正在显示...中间的是APP显示的主要内容区,然后看你个人的需求来选择是要左边弹出布局,还是右边弹出布局。...* 抽屉打开的时候,点击抽屉,drawer的状态就会变成STATE_DRAGGING,然后变成STATE_IDLE */ @Override...解决方法: //这里设置clickable(true) 必须动态设置 静态设置没有效果 //解决问题 侧滑菜单出来的时候 点击菜单上的区域会有点击穿透问题
本文实例为大家分享了Android使用DrawerLayout仿QQ6.0双侧滑菜单的具体代码,供大家参考,具体内容如下 ? 上面是效果图。...相关实现的源码和文章网上已经很多了,比较流行的做法分别是使用 FrameLayout, HorizontalScrollView或者是DrawerLayout 其实要实现QQ 6.X版本侧滑效果最好的方案是使用...从这里我们可以看出,菜单栏一定是显示在主界面上面的,所以,QQ6.0的菜单透视效果这里无法实现,因为菜单栏会覆盖掉主界面的一部分内容。...Override public void onDrawerStateChanged(int newState) { } } } 注意事项: 1.ViewHelper是nineoldandroids的第三方库...这里对于当前操作是哪个菜单的判断是通过TAG判断的。 源码下载:使用DrawerLayout仿QQ6.0双侧滑菜单 以上就是本文的全部内容,希望对大家的学习有所帮助。
领取专属 10元无门槛券
手把手带您无忧上云