Android Studio中导入SlidingMenu(详解)

时间:2022-03-12 04:39:13

参考:http://blog.csdn.net/u012210379/article/details/46604305


http://blog.csdn.net/shenyuanqing/article/details/47682025

1)先从github上下载这个zip压缩包并解压出来。里面的library文件夹就是我们需要的东西。

 

Android Studio中导入SlidingMenu(详解)

 

2)导入依赖库

Android Studio中导入SlidingMenu(详解)

3)切换到project视图,分别打开app下面的 build.gradle跟library下的build.gradle。将library 下的gradle 版本修改与 本机 版本的相符 , 本机版本在根目录下的build.gradle 查看 注意分清楚!

把SlidingMenu-master/library下的build.gradle的几项:classpath,compileSdkVersion,buildToolsVersion,minSdkVersion,targetSdkVersion改成与你的项目一样

Android Studio中导入SlidingMenu(详解)

 

Android Studio中导入SlidingMenu(详解)

 

 

4)别忘了你还需要app点击鼠标右键点开module setting 添加依赖,其实这些东西你都可以在配置文件中更改。不过我更喜欢用鼠标来点。

 

Android Studio中导入SlidingMenu(详解)

 

 

Android Studio中导入SlidingMenu(详解)

 

好了,到这里,我们的SlidingMenu的library就成功地导入我们所写的app中了。下面就可以成功调用。

上运行图:Android Studio中导入SlidingMenu(详解)

 

package com.example.nanchen.slidingmenudemo; import android.os.Bundle;import android.support.v7.app.AppCompatActivity; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu; public class MainActivity extends AppCompatActivity {     @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);         // configure the SlidingMenu        SlidingMenu menu = new SlidingMenu(this);        menu.setMode(SlidingMenu.LEFT);        // 设置触摸屏幕的模式        menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);        menu.setShadowWidthRes(R.dimen.shadow_width);        menu.setShadowDrawable(R.color.colorAccent);         // 设置滑动菜单视图的宽度        menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);        // 设置渐入渐出效果的值        menu.setFadeDegree(0.35f);        /**         * SLIDING_WINDOW will include the Title/ActionBar in the content         * section of the SlidingMenu, while SLIDING_CONTENT does not.         */        menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);        //为侧滑菜单设置布局        menu.setMenu(R.layout.left_menu);    }}

activity_main

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="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/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.nanchen.slidingmenudemo.MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"/>
</RelativeLayout>

left_menu.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">


<ListView
android:background="#2c90c9"
android:layout_width="match_parent"
android:layout_height="match_parent">

</ListView>

</LinearLayout>

<dimen name="slidingmenu_offset">60dp</dimen>
<dimen name="shadow_width">15dp</dimen>

ps

一句话解决SlidingMenu和其他滑动控件之间的冲突

http://blog.csdn.net/u011131296/article/details/40681383

今天在使用开源SlidingMenu的时候,发现和ViewPage之间存在一定的冲突,本以为是按照触摸重写ViewPage的滑动事件,将SlidingMenu的触摸滑动给隔离掉,但在网上搜索了一下,还是找到了一个比较好的解决方法:

menu.addIgnoredView(mViewPager);//可以解决使用SlidingMenu和其他滑动的冲突