页面侧滑2

首先要向工程中加入侧滑菜单的依赖包

将下述代码写到activity中
package com.xinxue.slidingmenudemo;

import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu.CanvasTransformer;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu.OnClosedListener;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu.OnOpenedListener;

import android.graphics.Canvas;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    // 创建对象
    SlidingMenu smenu = new SlidingMenu(this);
    // 设置出现在左边还是右边
    smenu.setMode(SlidingMenu.LEFT);
    // 设置调出slidingmenu的区域
    smenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
    // 设置阴影的宽度
    smenu.setShadowWidth(8);
    smenu.setShadowDrawable(R.drawable.shadow);
    // 设置slidingmenu滑出来时的宽度
    smenu.setBehindOffset(100);
    // 设置刚拉出来的时候颜色,1为全黑
    smenu.setFadeDegree(0.3f);
    // 添加到Activity上面
    smenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);

此处加入要侧滑的布局文件
smenu.setMenu(R.layout.menu);
// 关闭监听
smenu.setOnClosedListener(new OnClosedListener() {

        @Override
        public void onClosed() {
            Toast.makeText(MainActivity.this, "关闭了", Toast.LENGTH_SHORT).show();

        }
    });
    // 打开监听
    smenu.setOnOpenedListener(new OnOpenedListener() {

        @Override
        public void onOpened() {
            Toast.makeText(MainActivity.this, "打开了", Toast.LENGTH_SHORT).show();

        }
    });
    // 创建动画对象设置显示的时候出现的动画,这里我写的是一个入场动画
    CanvasTransformer canvasTransformer = new CanvasTransformer() {

        @Override
        public void transformCanvas(Canvas canvas, float percentOpen) {
            float scale = (float) (percentOpen * 0.25 + 0.75);
            canvas.scale(scale, scale, canvas.getWidth() / 2, canvas.getHeight() / 2);
        }
    };
    smenu.setBehindCanvasTransformer(canvasTransformer);
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值