很多APP都有侧滑菜单的功能,部分APP左右都是侧滑菜单~SlidingMenu 这个开源项目可以很好帮助我们实现侧滑功能,如果对SlidingMenu 还不是很了解的童鞋,可以参考下本篇博客。

本片博客只是SlidingMenu的简单用法适合新手使用,谢谢支持。

首先得先导个第三方包:slidingmenu.jar

马上进入代码

在这主页activity_main.xml就不显示了看个人需求

这是侧拉显示布局 看个人显示页面布局(仅供参考)/JinRiTiouTiao/res/layout/left_cela.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="100dp"
android:background="#fff3f3f3"
> <ImageView
android:id="@+id/cela_shouji"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="22dp"
android:background="@drawable/cellphoneicon_login_profile_normal" /> <ImageView
android:id="@+id/cela_qq"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignTop="@+id/cela_shouji"
android:layout_centerHorizontal="true"
android:background="@drawable/ic_qq_login_normal" /> <ImageView
android:id="@+id/cela_weibo"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/cela_qq"
android:layout_marginRight="14dp"
android:background="@drawable/ic_weibo_login_normal" /> <TextView
android:id="@+id/genduofangsi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="更多方式登录>>>" /> </RelativeLayout>
<ListView
android:id="@+id/ce_listview"
android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_weight="1"
></ListView>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="100dp"
android:background="#fff3f3f3"
> <TextView
android:id="@+id/cela_xiazaitext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/cela_xiazai"
android:layout_below="@+id/cela_xiazai"
android:text="离线下载" android:textSize="12dp" /> <ImageView
android:id="@+id/cela_yejian"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_above="@+id/cela_xiazaitext"
android:layout_centerHorizontal="true"
android:background="@drawable/nighticon_leftdrawer_normal" /> <TextView
android:id="@+id/cela_yejiantext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/cela_yejian"
android:layout_below="@+id/cela_xiazai"
android:text="夜间模式"
android:textSize="12dp" /> <ImageView
android:id="@+id/cela_shezhi"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_above="@+id/cela_yejiantext"
android:layout_alignParentRight="true"
android:layout_marginRight="22dp"
android:background="@drawable/settingicon_leftdrawer_normal" /> <ImageView
android:id="@+id/cela_xiazai"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="24dp"
android:background="@drawable/downloadicon_leftdrawer_normal" /> <TextView
android:id="@+id/cela_shezhitext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/cela_yejiantext"
android:layout_alignBottom="@+id/cela_yejiantext"
android:layout_alignLeft="@+id/cela_shezhi"
android:text="快速设置"
android:textSize="12dp" /> </RelativeLayout>
</LinearLayout>

接下来在主页/JinRiTiouTiao/src/com/bawei/jinritioutiao/MainActivity.java中打

//侧拉
final SlidingMenu menu=new SlidingMenu(this);
menu.setMode(SlidingMenu.LEFT);//设置菜单滑动模式,菜单是出现在左侧 LEFT_RIGHT左右两侧都有 RIGHT右侧
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);//设置滑动的区域 这个是边上 TOUCHMODE_FULLSCREEN该设置为全屏区域都可以滑动 TOUCHMODE_NONE不能滑动
//menu.setShadowDrawable(R.drawable.shadow);//设置阴影图片
//menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右侧菜单的阴影图片
//menu.setShadowWidthRes(R.dimen.shadow_width);//设置阴影图片的宽度
menu.setBehindWidth(300);//侧拉页面宽度
//menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu划出时主页面显示的剩余宽度
menu.setBehindOffset(150);//剩余主页面宽度
menu.setFadeDegree(0.35f);//滑动时的渐变程度
menu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT);//使SlidingMenu附加在Activity上
//menu.setSecondaryMenu(R.layout.menu_frame2);//设置右侧菜单
menu.setMenu(R.layout.left_cela);//设置左侧menu的布局文件

//这是给主页面某个控件设监听让他点击显示侧拉菜单
      tiouxiang.setOnClickListener(new OnClickListener() {

@Override
         public void onClick(View v) {
        // TODO Auto-generated method stub
         //点击显示侧拉菜单
         menu.showMenu();
      }
     });

SlidingMenu实现app侧滑功能的更多相关文章

  1. Android 使用Toolbar+DrawerLayout快速实现仿“知乎APP”侧滑导航效果

    在以前,做策划导航的时候,最常用的组件便是SlidingMenu了,当初第一次用它的时候觉得那个惊艳啊,体验可以说是非常棒. 后来,Android自己推出了一个可以实现策划导航的组件DrawerLay ...

  2. RecyclerSwipeAdapterDemo【使用AndroidSwipeLayout用于列表项侧滑功能】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 记录AndroidSwipeLayout搭配Recyclerview实现列表项侧滑功能. 效果图 代码分析 适配器类中设置Swipe ...

  3. SlidingMenu+ViewPager实现侧滑菜单效果

    先简单介绍下SlidingMenu和ViewPager. ViewPager就是一个官方提供的多页面滑动组件,需要一个适配器来构建多个页面. 先来看看ViewPager对应的基本适配器PageAdap ...

  4. 关于H5唤醒APP的功能实现(千辛万苦啊!)

    首先,我是个后端,写java的,甚至不是搞移动端的,所以js这方面有点底子但不专业,对于出现的错误也请见谅,原来项目要求有个H5页面打开APP的功能就强行要做,没办法就想办法搞一下,网上的教程基本都是 ...

  5. vue-router实现SPA购物APP基本功能

    概述 vue-router是vue中的一个核心插件,用它来实现SPA购物APP基本功能 详细 代码下载:http://www.demodashi.com/demo/10725.html vue-rou ...

  6. 提高 iOS App 通知功能启用率的三个策略

    我们都知道推送通知在 App 运营中的作用巨大.但是,很多用户却并不买帐,App 第一次启动提示是否「启用推送通知」时,他们直接选择了「否」. 是的,最近我本人就转变成了这样的人 - 认真地评估每个应 ...

  7. APP的功能分类及打包与发布的分类方式

    智能手机的出现改变了我们的生活,同时各种各样的APP充斥在我们的手机当中.那么我先现在在来熟悉一下APP的分类及其用途:工具类.社交类.信息类.娱乐类.生活类等几大类.我么了解了APP的用途分类,那么 ...

  8. Android中禁止SlidingPaneLayout的侧滑功能

    Android中使用android.support.v4.widget.SlidingPaneLayout实现侧滑功能的时候,可能出现滑动屏幕时与SlidingPaneLayout的侧滑发生冲突,查看 ...

  9. 创建你自己定制的vuejs plugin扩展app的功能

    什么是vuejs plugin插件 vuejs plugin插件是一个向你的app注入新的全局功能的强大但又简约的方式.从概念上来说,vue plugin非常简单,它就是一个包含了install方法的 ...

随机推荐

  1. iOS:创建Siri 功能

    前奏: iOS 10 出来之后,我们开发者也可以使用类似Siri的功能.它是使用Siri里面的一个语音识别框架Speech framework来处理siri的.现在, 让我们来看看 一些 主要的代码吧 ...

  2. mvc理念和thinkphp的语法特征 thinkphp引入模板

    mvc即模型(model)-视图(view)-控制器(controller)的缩写 控制器很重要,功能性的东西要靠它实现,模型我还没接触到,只知道它对数据库负责,类似一个大控件吧... 速度... 一 ...

  3. 蒋鑫:为什么 Git 比 SVN 好

    在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性,选择Git早已是大势所趋. 但对于企 ...

  4. 第十四篇 Integration Services:项目转换

    本篇文章是Integration Services系列的第十四篇,详细内容请参考原文. 简介在前一篇,我们查看了SSIS变量,变量配置和表达式管理动态值.在这一篇,我们使用SQL Server数据商业 ...

  5. [Linux]gdb调试

    exbot@ubuntu:~/CodeLearn/HelloWorld/src$ g++ -g main.cpp exbot@ubuntu:~/CodeLearn/HelloWorld/src$ ./ ...

  6. [NetTopologySuite](2)任意多边形求交

    任意多边形求交: private void btnPolygon_Click(object sender, EventArgs e) { , , , , , , , , , , , , , }; , ...

  7. Vue.2.0.5-自定义指令

    简介 除了默认设置的核心指令( v-model 和 v-show ),Vue 也允许注册自定义指令.注意,在 Vue2.0 里面,代码复用的主要形式和抽象是组件--然而,有的情况下,你仍然需要对纯 D ...

  8. 注册页面的简单搭建(H5)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. SweetAlert2 使用教程

    SweetAlert2是一款功能强大的纯Js模态消息对话框插件.SweetAlert2用于替代浏览器默认的弹出对话框,它提供各种参数和方法,支持嵌入图片,背景,HTML标签等,并提供5种内置的情景类, ...

  10. mysql:sql行列转换

    今天一个同学遇到一个问题问我了,由于本人平时学习的mysql比较基础,确实没解决,后来google了一下,才知道是sql的一种技法[行列转换],话不多说先上图: 想得到下面的结果: +------+- ...