抽屉实现-->

DrawerLayout可以实现左滑和右滑功能,只要在layout文件中配置好左右两个抽屉就可以了,左右两个抽屉可以是任意的view,结合NavigationView可以很好实现侧滑菜单的功能

要使用DrawerLayout,需要v4包,使用NavigationView,需要v7包;

--------------------------------------------布局------------------------------------------------

<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    xmlns:app="http://schemas.android.com/apk/res-auto"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.qianfeng.zhouyi.drawerlayouttest.MainActivity">

   <FrameLayout       android:layout_width="match_parent"       android:layout_height="match_parent"/>

    <android.support.design.widget.NavigationView        android:layout_width="wrap_content"        android:layout_height="match_parent"        android:layout_gravity="left"        app:headerLayout="@layout/layout_navhead"        app:menu="@menu/mymenu"        android:id="@+id/navTest"

        /></android.support.v4.widget.DrawerLayout>----------------------------------------------------------------------------

drawlayout只需要配置layout_gravity属性为“left”或“right”即可自动构建左边或右边的抽屉,也可两个都配置

headerLayout就是给导航栏增加一个头部Layout。

menu就是对应菜单项的选择条目。

--------------------------------------navigationview的响应操作--------------------------------------------

设置navigationview的菜单响应:

//设置导航栏NavigationView的点击事件
NavigationView mNavigationView = (NavigationView) findViewById(R.id.navigation_view);
mNavigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
    @Override
    public boolean onNavigationItemSelected(MenuItem menuItem) {
        switch (menuItem.getItemId()) {
            //事件操作...
        }
        menuItem.setChecked(true);//点击了把它设为选中状态
        mDrawerLayout.closeDrawers();//关闭抽屉
        return true;
    }
});
时间: 2024-10-13 14:40:09

抽屉实现-->的相关文章

第三方抽屉效果

1.  抽屉效果的基本原理应用了父子视图的层级,视图的位置改变,动画,手势操作等主要知识点.熟练掌握基础知识并灵活运用,即可实现该效果. > 父子视图的层级: 在指定层级上插入子视图 [view insertSubView: atIndex:] > 视图位置的改变: 通过视图的frame,center属性调整 > 动画:可使用UIView或CALayer的动画,这里主要使用了UIView的动画方法 [UIView animateWithDuration:……. ] > 手势操作:主

Android提高第十九篇之&quot;多方向&quot;抽屉--转

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 在android上要实现类似Launch的抽屉效果,大家一定首先会想起SlidingDrawer.SlidingDrawer是android官方控件之一,本文的主角不是它,而是民间的控件工具集合~~~android-misc-widgets.android-misc-widgets里面包含几个widget:Panel.SmoothButton.Switcher.VirtualKeyboard,还有一些动画特

ios开发抽屉效果的封装使用

#import "DragerViewController.h" #define screenW [UIScreen mainScreen].bounds.size.width @interface DragerViewController () /** <#注释#> */ @property (nonatomic, weak) UIView *leftV; @property (nonatomic, weak) UIView *rightV; @property (non

动画的抽屉效果

添加三个View // // ViewController.m // UISenior17_抽屉效果 // // Created by lanou3g on 16/5/27. // Copyright © 2016年 张明杰. All rights reserved. // #import "ViewController.h" //frame #define XMGkeyPath(objc, keyPath) @(((void)objc.keyPath, #keyPath)) //获取

MMDrawerController抽屉侧边栏的简单使用

1.MMDrawerController是一个简单实用的侧边栏第三方类库. 2.在appdelegate页中初始化你需要的左右侧边栏,leftViewController ,mainViewController. 3.在appdelegate中导入头文件#import "MMDrawerController.h" 4.初始化抽屉控制器:     MMDrawerController * drawerController = [[MMDrawerController alloc] ini

iOS开发——实用技术OC篇&amp;简单抽屉效果的实现

简单抽屉效果的实现 就目前大部分App来说基本上都有关于抽屉效果的实现,比如QQ/微信等.所以,今天我们就来简单的实现一下.当然如果你想你的效果更好或者是封装成一个到哪里都能用的工具类,那就还需要下一些功夫了,我们这里知识简单的介绍怎么去实现,不过一般我们开发都是找别人做好的,也没必要烂肺时间,除非你真的是大牛或者闲的蛋疼. 其实关于抽屉效果就是界面有三个View,其实一个主View其他两个分别是左边和右边的View,我们分别为他们添加手势,实现左右滑动显示对应的View. 一:所以,首先我们需

抽屉栏

首先倒入如下文件 #import "AppDelegate.h" #import "MainViewController.h" #import "LeftViewController.h" #import "MMDrawerController.h" #import "MMExampleDrawerVisualStateManager.h" #import "RightTableViewContr

CodeForces 23C Oranges and Apples 抽屉原理

题目链接:点击打开链接 #include <cstdio> #include <cstring> #include <algorithm> #include <vector> #include <iostream> #include <map> #include <set> #include <math.h> using namespace std; #define inf 10000000 #define l

POJ 3370 Halloween treats(抽屉原理)

Halloween treats Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6631   Accepted: 2448   Special Judge Description Every year there is the same problem at Halloween: Each neighbour is only willing to give a certain total number of sweets

Android Design Support Library(二)用NavigationView实现抽屉菜单界面

NavigationView在MD设计中很重要,之前Google也提出了使用DrawerLayout来实现导航抽屉. 这次,在Android Design Support Library中,Google提供了NavigationView来实现导航菜单界面. 这次我们写的代码在Android用TabLayout实现相似网易选项卡动态滑动效果这篇文章代码的基础上进行改动,所以最好先看看上面这篇文章 首先仍旧是配置build.gradle: dependencies { compile fileTre