概述 最近流行 左侧抽屉式的导航条菜单,知乎,360,QQ都使用了这样的导航菜单,我们也了解下: Android Design 的流行趋势:Navigation Drawer 导航抽屉 参考这篇文章:http...MainActivity需要 为DrawerLayout 注册一个回调事件接口ActionBarDrawerToggle ,这个事件的实现者监听器会获得 抽屉弹出(onDrawerOpened)和关闭(...))); // 注册导航菜单抽屉 的弹出和关闭事件 mDrawerToggle = new ActionBarDrawerToggle(this, /* host Activity...R.string.drawer_close /* "close drawer" description for accessibility */ ) { // 当导航菜单抽屉...// onPrepareOptionsMenu() } // 当导航菜单抽屉
drawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。...使用步骤: 创建一个DrawerLayout 为了添加导航抽屉,你需要在你的布局界面中声明一个DrawerLayout对象作为布局的根节点。...它包含了两个子节点:一个FrameLayout它包含了主要内容(在运行时将会被Fragment替换) 和 一个ListView作为导航抽屉,上面titlebar 上图标,负责打开、关闭抽屉; <?...主内容View被设置成匹配父View的宽和高,因为当导航抽屉隐藏的时候它要填充整个UI。...为了保证用户无论怎样都能看到主内容的一部分,导航抽屉的宽度不能超过320dp 初始化Drawer List 在你的Activity中,要做的第一件事是初始化导航抽屉的列表项。
看名字我们就知道这个组件仅限 Android 平台能用。Android 中的 DrawerLayout 就是一个抽屉导航组件,所以这个组件的功能当然也是一样的。...locked-open,意思是此时抽屉将保持打开,不可用手势关闭。 记住:无论抽屉处于那种状态,我们都可以调用openDrawer/closeDrawer这 两个方法打开和关闭。...抽屉可以有3种状态: dle(空闲),表示现在导航条上没有任何正在进行的交互。 dragging(拖拽中),表示用户正在与导航条进行交互。...settling(停靠中),表示用户刚刚结束与导航条的交互,导航条正在结束打开或者关闭的动画。...它将只对API 21以上的效果 DrawerLayoutAndroid 方法 openDrawer(0) 打开抽屉导航 closeDrawer(0) 关闭抽屉导航 实例演示 还是老样子,看代码前,我们先看看效果图
使用注意点 1、DrawerLayout的第一个子元素必须是默认内容,即抽屉没有打开时显示的布局(如FrameLayout),后面紧跟的子元素是抽屉内容,即抽屉布局(如ListView)。...4、打开抽屉: DrawerLayout .openDrawer(); 关闭抽屉:DrawerLayout.closeDrawer( ); 一个典型的布局实例: <FrameLayout android:id="@+id/fragment_layout" android...遇到的问题 1、在点击DrawerLayout中的空白处的时候,底部的content会获得事件。..." //导航的顶部视图 app:menu="@menu/menu_drawer_left" /> //导航的底部菜单 </android.support.v4.widget.DrawerLayout
前言 一般来说,用户会通电点击 x 按钮来关闭 但有些场景,比如登录页需要在登录成功时关闭,这是应该怎么办呢?...close() } ... } 完美关闭登陆页~ 且其他页面照常运行~ 但这个的方法,前提是得获得当前 WIndowController 实例,所以得在单例中、ViewController...中或者做全局的 WindowController 管理?...NSWindowController :: 我们直接使用 self.window.close() 就可以啦 NSViewController :: 我们需要通过 self.view.window.close() 来关闭
# 前言 一般来说,用户会通电点击 x 按钮来关闭 但有些场景,比如登录页需要在登录成功时关闭,这是应该怎么办呢?...close() } ... } 完美关闭登陆页~ 且其他页面照常运行~ 但这个的方法,前提是得获得当前 WIndowController 实例,所以得在单例中、ViewController...中或者做全局的 WindowController 管理?...NSWindowController :: 我们直接使用 self.window.close() 就可以啦 NSViewController :: 我们需要通过 self.view.window.close() 来关闭
tensorflow-gpu\Lib\site-packages\tensorflow\python\keras 3、找到keras目录下的optimizers.py文件并添加自己的优化器 找到optimizers.py中的...# 传入优化器名称: 默认参数将被采用 model.compile(loss=’mean_squared_error’, optimizer=’sgd’) 以上这篇如何在keras中添加自己的优化器...(如adam等)就是小编分享给大家的全部内容了,希望能给大家一个参考。
DrawerLayout 作者:飞龙 DrawerLayout是android.support.v4中提供的控件,用于实现边栏和侧滑效果。...主内容区的布局代码必须放在侧滑菜单布局的前面, 因为 XML 元素按 z 序(层叠顺序)排列,并且抽屉式导航栏必须位于内容顶部。...操作 通过手动侧滑可以打开或关闭边栏,触摸主布局可以关闭边栏。...(闲置-0),STATE_DRAGGING(拖拽-1),STATE_SETTLING(固定-2)中之一。...public void onDrawerOpened(View arg0) { } /** * 当一个抽屉完全关闭的时候调用此方法 */ @Override
在本文中,我们将为大家讲解另外一个用例,即类似操作栏 (Action Bar)、底部标签栏或者抽屉型导航栏之类的 UI 组件如何在应用中实现导航功能。...我需要在应用中增加一些页面,所以有必要使用抽屉式导航栏或者底部标签栏来辅助用户导航。但是我们该如何使用这些 UI 组件来集成导航功能呢?通过点击监听器手动触发导航动作吗? 不需要!无需任何监听器。...抽屉式导航栏 虽然看上去不错,但是如果您设备的屏幕尺寸较大,那么底部标签栏恐怕无法提供最佳的用户体验。...setupWithNavController(navController) } 现在当我在屏幕较宽的设备上运行应用时,可以看到抽屉式导航栏已经设置了 MenuItem,并且在导航图中,MenuItem...Donut Tracker 应用并不需要底部标签栏或者抽屉式导航栏,但是添加了新的功能和目的页面后,NavigationUI 可以很大程度上帮助我们处理应用中的导航功能。
> 复制代码 这样可以在保证方形表盘不受影响的情况下,圆形布局的内容,不会超过显示边界: 导航抽屉栏 为了节省宝贵的显示空间,通常手表应用是没有标题栏的,在使用 ViewPager 的时候,也没有 TabLayout...操作抽屉栏 当需要对当前页面进行一些操作的时候,但页面里又没有空间再放按钮了怎么办?既然可以从顶部下拉出导航栏,要不在底部上拉出一个操作栏?...自定义抽屉栏 导航栏 WearableNavigationDrawerView 和 操作栏 WearableActionDrawerView 用起来很简单,但是它们的样式是固定的,一个只能显示图标加标题...它包裹了抽屉栏的主视图 drawer_content 和关闭时露出部分的视图 peek_view。...我们把它添加到布局中: <android.support.wear.widget.CircularProgressLayout android:id="@+id/circular_progress
tabs(选项卡) a motion and scroll framework to tie them together(将这些控件结合在一起的手势滚动框架) 官方视频简介 Navigation View 抽屉导航是...NavigationView 通过提供抽屉导航所需要的框架让实现更简单,同时它还能够直接通过菜单资源文件来直接生成导航元素。 ?...="@drawable/ic_android" android:title="@string/navigation_item_2"/> group> 被点击过的item会高亮显示在抽屉菜单中...,使用起setNavigationItemSelectedListener()来获取元素被选中的回调时间,它为你提供被点击的 菜单元素 ,让你可以处理选择事件,改变复选框状态,加载新内容,关闭导航菜单,...效果图 Code 第一步 加入依赖 本工程的build.gradle中 compile 'com.android.support:design:23.1.1' ---- 悬浮操作按钮 Floating
有三种状态: unlocked (默认值),意味着此时抽屉可以响应打开和关闭的手势操作。 locked-closed,意味着此时抽屉将保持关闭,不可用手势打开。...locked-open,意味着此时抽屉将保持打开,不可用手势关闭。 无论抽屉处于那种状态,都仍然可以调用openDrawer/closeDrawer这两个方法打开和关闭。...onDrawerClose function 每当导航视图(抽屉)被关闭之后调用此回调函数。 onDrawerOpen function 每当导航视图(抽屉)被打开之后调用此回调函数。...抽屉可以有3种状态: idle(空闲),表示现在导航条上没有任何正在进行的交互。 dragging(拖拽中),表示用户正在与导航条进行交互。...settling(停靠中),表示用户刚刚结束与导航条的交互,导航条正在结束打开或者关闭的动画。
--The main content view 抽屉关闭时候的主视图-- <FrameLayout android:id="@+id/content_frame" android...-- The Navigation view 左侧拉开之后的导航视图 -- <ListView android:id="@+id/left_drawer" android:layout_width...contentFragment ).commit(); //开启事务,向容器内加入碎片,最后提交事务 mDrawerLayout.closeDrawer(mListView); //进入碎片界面时关闭掉抽屉的内容...} 三)监听抽屉的打开关闭事件 使用ActionBarDrawerToggle,最早的时候在v4包里,现在谷歌把它搬到了v7包里,所以要引入v7依赖包 在引入v7包的时候,我遇到了一个错误,support...这是因为v7包版本过低,解决方法是在project:properties里target=android-8改为21以上就好 当抽屉打开的时候,标题栏改为”请选择”,当抽屉关闭的时候,标题栏变为原来的app
众所周知,在多页面应用程序中,页面的跳转是通过路由或导航器来实现的。...DrawerNavigator:用于实现侧边栏抽屉页面的导航组件。 需要说明的是,由于react-navigation在3.x版本进行了较大的升级,所以在使用方式上与2.x版本会有很多的不同。...系统上,需要在Android工程的MainActivity.java中添加如下代码: public class MainActivity extends ReactActivity { ......headerRight:设置导航栏右侧展示的React组件。 headerLeft:设置标题栏左侧展示的React组件。 headerStyle:设置导航条的样式,如背景色、宽高等。...gesturesEnabled:设置是否可以使用手势关闭当前页面,iOS默认开启,Android默认关闭。
一个可在Flutter应用中创建可折叠的侧边栏导航抽屉的 Flutter 插件。...Flutter使开发人员可以轻松使用导航抽屉,而无需其他人就无需编写大部分代码。 在本博客中,我们将探讨Flutter中 的**可折叠侧边栏。...利用Material Design的移动应用程序有两个必不可少的导航选择。这些导航是“选项卡和抽屉”。抽屉是选项卡的一种可选选择,因为有时移动应用程序没有足够的空间来帮助选项卡。 抽屉是不可见的侧屏。...它是一个向左滑动的菜单,在大多数情况下,它包含应用程序中的重要连接,并且在显示时拥有一半的屏幕。 该演示视频展示了如何在Flutter中创建可折叠的侧边栏。...在此方法中,我们将定义setState()。当_fsbStatus等于FSBStatus.FSB_OPEN时,抽屉将关闭。否则,它们将打开。
Android 中ActionBar+fragment实现页面导航的实例 为保证android2.0以上均能运行,使用support.v7库下的actionbar及fragment 继承自AppCompatActivity...(ActionBarActivity已过时)使用getSupportActionBar()得到ActionBar, ActionBar.Tab,这里Tab必须设置监听,在监听中实现Fragment的切换...//schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width...<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent...android:name="android.intent.action.MAIN" / <category android:name="android.intent.category.LAUNCHER
1.所有的操作按钮和actionoverflow中其他可用的条目都被定义在菜单资源的XML文件中。通过在项目的res/menu目录中 新增一个XML文件来为actionbar添加操作。...activity不位于主屏时),需要在actionbar中为用户提供一个导航到逻辑父屏的up button(向上按钮)。...-- 左面可以滑出来一个抽屉 --> <!...5)一个用来描述关闭Navigation Drawer的文本(用于支持可访问性)....drawerView) { super.onDrawerClosed(drawerView); Toast.makeText(getApplicationContext(), "抽屉关闭了
1.所有的操作按钮和actionoverflow中其他可用的条目都被定义在菜单资源的XML文件中。通过在项目的res/menu目录中 新增一个XML文件来为actionbar添加操作。...activity不位于主屏时),需要在actionbar中为用户提供一个导航到逻辑父屏的up button(向上按钮)。... 可以一进如程序就打开一个抽泣 drawerLayout=(DrawerLayout...5)一个用来描述关闭Navigation Drawer的文本(用于支持可访问性)....drawerView) { super.onDrawerClosed(drawerView); Toast.makeText(getApplicationContext(), "抽屉关闭了
="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android...:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen...android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.os.Bundle...; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity...; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.Toast
我们想在这篇文章中和大家分享一下,团队在整个开发过程中克服了哪些挑战,转用手势导航的理由是什么,以及所作的一些妥协。...应用抽屉和其它侧滑操作 经过多番权衡与谨慎考量,我们最终决定将侧滑设为返回操作,但是在此过程中,尤其是在降低手势对应用的影响方面,我们作出了许多艰难的取舍。...比如说,我们发现 3% 到 7% 的用户 (具体比例因应用而异) 通过侧滑手势打开应用导航抽屉,其余用户则选择点击汉堡形菜单按钮来弹出抽屉。...在 Android Q 模式下,返回手势在最初 3 天的使用频率较低,但过了这段时间之后,用户每天进行返回操作的次数将与三键导航及 Android P 导航中的次数持平。 开发者该如何应对?...我们十分注重对开发者的支持,与此同时,我们也期望为您提供全方位帮助,让您在应用中顺利添加手势导航。
领取专属 10元无门槛券
手把手带您无忧上云