谷歌官方推出了一种侧滑菜单的实现方式(抽屉效果),即 DrawerLayout,这个类是在Support Library里的,需要加上android-support-v4.jar这个包。...抽屉菜单的宽度应该不超过320dp,这样用户可以在菜单打开的时候看到部分内容界面。...解决办法:在include进的那个布局里面,添加clickable=true 2、除了抽屉的布局视图之外的视图究竟放哪里 左、右抽屉和中间内容视图默认是不显示的,其他布局视图都会直接显示出来,但是需要将其放在...3、去除左右抽屉划出后内容显示页背景的灰色?...实现抽屉菜单 NavigationView是Android M中提出一个新的MD风格的组件,它将自己一分为二,上面显示一个通用的布局,下面显示一组菜单。
NavigationView的结构比较简单,用法也不难。因为NavigationView是在Android5.0后新增的design库中提供,所以要先给App工程引用design库。...在布局文件中使用NavigationView,可设置以下几个专门属性: app:headerLayout : 指定头部布局的资源文件。 app:menu : 指定导航菜单的资源文件。....widget.DrawerLayout> 下面是布局文件中引用的导航菜单文件menu_one.xml,结构定义与普通的菜单文件基本相同,多出来的group节点用于给菜单项分组,不同的菜单组之间会显示分隔线...:title="退出"/> NavigationView还提供了以下方法,用于在代码中操作导航视图: addHeaderView : 添加头部视图。...3、每个菜单项只有图标和文字,不能添加其他控件。 4、无法设置每个菜单项的间距。 所以呢,要想实现丰富可定制的导航菜单,还得自己定义一个导航视图。
setSupportActionBar方法替换Actionbar 在xml中使用Toolbar: 在代码中设置属性,也可以在xml中使用app:属性名 直接设置 public class MainActivity extends AppCompatActivity...toolbar.jpg 和Actionbar相同,Toolbar也支持菜单栏,我们需要在xml中定义,用法和NavigationView的菜单一样 <?...showOverflowMenu() 从显示相关的菜单溢出项目。 dismissPopupMenus() 关闭所有当前显示弹出式菜单,包括溢出或子菜单。...setTitleMargin(int start, int top, int end, int bottom) 设置标题边距。
NavigationView 控件用处:轻松布局华丽炫酷的滑动菜单页面; 2.1 添加了两行依赖关系 compile 'com.android.support...2.2.1 menu是用来在NavigationView中显示具体的菜单项的; 为Menu resource file;...为Layout resourcefile; 2.3 使用NavigationView 添加android.support.design.widget.NavigationView...menu是用来在NavigationView中显示具体的菜单项的; headerLayout则是用来在NavigationView中显示头部布局的。...表示组中的所有菜单项只能单选; 那么下面我们来看一下这些菜单项吧。
开始写代码 DrawerLayout 是v4包里面的,所以项目里面需要添加v4包,具体怎么添加就不多说了, NavigationView需要在build.gradle里面添加compile ‘com.android.support...-- 左边菜单 -- <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width....widget.DrawerLayout 然后在res文件夹里面添加一个menu菜单文件夹,已经添加的就不用添加了 上面的代码里面NavigationView里面有个 app:menu=”@menu/...activity_main_drawer”对应如下: 添加一个菜单文件,名字随意,我的是activity_main_drawer.xml activity_main_drawer.xml <?...) findViewById(R.id.nav_view); NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view
也就是对应着在menu中的两个菜单,同时也对应我们侧边栏中的一个首页和一个代码页, <item android:id="@+id/homeFragment"...,之前我们可能要通过宿主Activity或者接口等方法,总之挺麻烦的,下面我们看看通过Navigation控制的Fragment之间怎么传递?...下面我们跟到NavController.setGraph()中看下是怎样将我们设计的fragment添加进去的?...而这个mBackStack是什么时候添加的navigator的呢?...3.6 遗留问题 遗留:还记得上面说的那个在设置menu菜单栏的item的ID要和navigation.xml里fragment的ID相同么?
NavigationUI 类通过匹配目标页面 id 与菜单 id 实现不同页面之间的导航功能。让我们深入探索一下它的内部机制吧。...我们从添加底部标签栏入手。首先添加 bottom_nav_menu.xml 文件并且声明两个菜单元素。...我需要添加 NavigationView,并且将 nav_drawer_menu 设置为 NavigationView 的 menu 属性。...接下来,我将在 NavigationView 和 FragmentContainerView 之间添加分隔符。...为了使代码保持整洁、各个元素之间更加清晰,我们会在新的方法中实现相关操作,并且在 onCreate() 中调用该方法。
Basic Activity 模板同时还创建了在两个目的地彼此之间导航的示例代码。...另一个我想特别指出的是 NavigationView: ? 这个视图目前在左边屏幕外,它是一个 NavigationDrawer 并且其菜单选项被用来在目的地之间导航。...导航部件 我们已经在层级结构中查看了几个 UI 组件,以及它们彼此之间是如何关联的,接下来我想介绍一下几个重要部件,导航组件正是利用它们来在目的地之间实现导航。...应用展示了 NavigationView (抽屉式导航栏) 覆盖在 activity 内容上方 接下来是 NavigationView,它是一个从左边划入的抽屉式导航栏。...它在导航图中提供了一个可能目的地的菜单栏。NavigationView 其中一个很酷的特性是,您可以使用菜单项的 ID 自动地导航到对应菜单项关联的目的地,从而避免了手动创建基于菜单选择的重复代码。
Material Design系列控件,我们今天就先从侧滑菜单栏开始,侧滑菜单栏通过名字我们就知道包含两部分,一部分是侧滑(DrawerLayout),一部分是导航菜单栏(NavigationView)...DrawerLayout包含NavigationView,一设置侧滑菜单栏就形成了。...因为建立一个侧滑菜单很简单,在用Android Studio新建项目时,最后选择Navigation Drawer Activity或者在新建Activity时选择Navigation Drawer Activity...从图中,我们可以看到菜单列表,这个菜单列表是我们刚开始建项目时自动生成的,系统默认的,我们需要定制这个菜单变成我们自己的。其实就是要用到了NavigationView。...(this); 侧滑菜单中选项按钮的点击事件 MainActivity实现了NavigationView.OnNavigationItemSelectedListener这个监听事件,然后在实现的监听方法里判断点击事件
添加增删接口 在Adapter中添加以及删除的接口: //条目的增删 public void addItem(String data, int position) { mDatas.add(...其中,菜单部分的根布局需要添加android:layout_gravity=”start”,如果是右滑的话,改为end即可。 这样就可以完成了一个基本的侧滑效果。...-- 菜单部分 --> <android.support.design.widget.NavigationView android:id="@+id/nav_view"... 到现在为止,就可以实现侧滑了,最后我们添加上对应的点击事件,然后关闭菜单: nav_view = (NavigationView) findViewById(R.id.nav_view...1.阴影的细微差别 5.x系统:边距阴影比较小,需要手动添加边距16dp,android:layout_margin=”16dp” 4.x系统:边距阴影比较大,手动修改边距0dp(原因:兼容包里面设置阴影效果自动设置了
用的是),这个父布局里面有且只有两个子控件(布局),初始状态菜单页的位置在Y轴上存在偏移这样可以就可以形成主页叠在菜单页的上方的视觉效果;然后在滑动的过程程中 逐渐修正偏移,最后菜单页和主页并排排列。...所有用 FrameLayout * 不然在设置偏移量时 隐藏的侧边菜单会跑到主页面的上面*/ FrameLayout layout = (FrameLayout) this.getChildAt(0)...1 到 0 之间 float scale = l * 1.0f / mBluetoothWidth; /** * 抽屉式侧滑 * scaleLeft 从默认偏移量到偏移量 为零 *实现 * */ float...让用户配置菜单距离右边的边距的值; 首先在values文件夹下新建一个attr.xml,写入以下内容: <resources <declare-styleable name="MyScrollView...format="dimension" / <attr name="leftPanding" format="dimension" / </declare-styleable </resources 在布局里设置边距
-- 用来放Drawerlayout中的内容, 这里使用NavigationView来实现类似Google pLay中的侧滑栏效果, 必须在build.gradle中添加compile.../apk/res-auto"; 另外,一定要添加android:layout_gravity="left"属性。...app:cardPreventCornerOverlap : 在v20和之前的版本中添加内边距, 这个属性是为了防止卡片内容和边角的重叠...app:cardUseCompatPadding : 设置内边距,v21+的版本和之前的版本仍旧具有一样的计算方式 --> <android.support.v7.widget.CardView xmlns...中菜单) <?
, 看起来也依然简洁.我在第三篇就写过Toolbar的使用....然后在效果图中, 点击Toolbar的左侧按钮, 会展开左侧的菜单. 菜单内容就是我在第一篇中写的, 具体代码就是mDlMain.openDrawer(GravityCompat.START);....NavigationView 官方文档 这是用来实现右侧菜单的....这里要说的是菜单部分, 将两个按钮设置成单选条目组, 就和单选按钮组是一样的了....<android.support.design.widget.NavigationView android:id="@+id/nav_user_info" android:layout_width
在之前的应用中,实现侧滑菜单功能大多是通过开源库SlidingMenu来实现,后来谷歌在V4包中添加了 DrawerLayout来实现这个功能,完全可以替代 SlidingMenu。...1.基本使用 对于 DrawerLayout来说,从它的名字就可以看出来它是一个布局,继承自 ViewGroup,在布局中允许放入两个直接子控件,第一个子控件为主屏幕中显示的内容,第二个子控件是侧滑菜单中显示的内容...注意:侧滑菜单部分的布局必须设置 layout_gravity属性,表示侧滑菜单是在左边(left)还是右边(right)。...2.代码控制及监听 上述示例中,只有在屏幕左边缘处进行拖拽,才可显示侧滑菜单,有时用户并不知道有此功能,这就需要我们通过按钮的点击操作,控制 DrawerLayout的显示或隐藏。...4.在代码中控制,完成代码如下。
它会针对您的应用支持的每种像素密度以适当的分辨率生成一组图标。Image Asset Studio 会将新生成的图标放置在项目中 res/ 目录下的特定于密度的文件夹中。...Trim - 要调整源资源中图标图形与边框之间的边距,请选择 Yes。此操作将移除透明空间,同时让宽高比保持不变。要让源资源保持不变,请选择 No。...操作栏和标签页图标 打开 Image Asset Studio 后,您可以按照以下步骤添加操作栏或标签页图标: (1)在 Icon Type 字段中,选择 Action Bar and Tab Icons...Trim - 要调整源资源中图标图形与边框之间的边距,请选择 Yes。此操作将移除透明空间,同时让宽高比保持不变。要让源资源保持不变,请选择 No。...Trim - 要调整源资源中图标图形与边框之间的边距,请选择 Yes。此操作将移除透明空间,同时让宽高比保持不变。要让源资源保持不变,请选择 No。
在调整文本之前,一定要先做好页面设置,按照要求设置好纸张大小和页边距,然后进行正文排版。 设置纸张大小和页边距的方法如下。...(1)在【布局】选项卡中,单击【纸张大小】命令,在下拉列表中选择目标格式纸。 (2)单击【页边距】命令,在下拉列表中设置一个符合标准的页边距,或者选择【自定义页边距】命令进行设置。...小贴士 选择【自定义页边距】命令后,会弹出【页面设置】对话框,在【页码范围】下的【多页】下拉列表中选择【对称页边距】命令。 封面 可以利用表格来制作论文封面。...若想要删除标题样式,则可以在【样式】组中,鼠标右击想要删除的标题样式,在弹出的快捷菜单中选择【从样式库中删除】命令,即可删除标题样式。...图11 【下一条脚注】和【上一条脚注】用于在脚注之间切换, 【上一条尾注】和【下一条尾注】用于在尾注之间切换。 为了整体文档的美观度,有时需要将脚注自动转化为尾注。
github地址:https://github.com/shuaijia/MaterialDesignProject 在做抽屉菜单的时候,测滑出来的布局都是由我们自己来定义的,自己写的话,花点时间也能做出来好看的侧拉菜单...Google在5.0之后推出了NavitationView,就是我们左边滑出来的那个菜单。这个菜单整体上分为两部分,上面一部分叫做HeaderLayout,下面的那些点击项都是menu。 ?.../jiashuai94/article/details/77508452),只不过这次我们把左边滑出菜单的布局用一个NavigationView来代替,代码如下: ?...2、布局属性 android:layout_gravity:这个属性必须设置(不设置的话就当做主界面的一部分,而不是侧滑菜单)。left表示侧滑菜单从左侧滑出,right表示从右侧滑出。...4、菜单文件 ? 注意: group标签可以对菜单选项进行分组,并且设置点击行为,为单选(single),并且每个组之间会有分割线。 item标签下可再添加menu标签,创建子菜单
Android 在客户端添加 goDetail 方法,我把 JavaScript 和 Java 交互的代码写在一个类里,记得给方法加上 @JavascriptInterface 注解: public class...,主要是参考了 D_clock爱吃葱花 大神的这篇文章,简单说一下实现过程如下: 在 styles 中添加「DayTheme」和「NightTheme」两个主题; 在布局文件中使用类似 android:...它们的颜色可以这样设置: // 菜单按钮 Drawable navigationIcon = toolbar.getNavigationIcon(); if (navigationIcon !...NavigationView 存在一个头部,需要的话可以可以这样修改头部的背景和字体颜色: View navigationHeader = navigationView.getHeaderView(0...(color); navigationView.setItemTextColor(color); navigationView.setItemIconTintList(color); 复制代码 RecyclerView
领取专属 10元无门槛券
手把手带您无忧上云