国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > 综合技术 > (3)SlidingMenu开源框架的SlideMenu在项目的使用方法+Fragment

(3)SlidingMenu开源框架的SlideMenu在项目的使用方法+Fragment

来源:程序员人生   发布时间:2014-12-11 08:24:05 阅读次数:2542次

我们现在开始先把侧滑栏做出来,再做底部。

1、侧滑菜单

我们上次已把侧滑菜单的library引进来了,现在我们要去用这个东西。

我要用它的话,MainActivity 就不能继承Activity了,而是继承SlidingFragmentActivity

现在我们来分析1下

       (1)其实setContentView(R.layout.activity_main);这句代码只是把activity_main.xml这个界面给显现出来,了,这个同样成为内容页,然后内容页有1个按钮点1下就出来1个东西,这个才是侧滑菜单。

      (2)我们已有setContentView了,然后呢我们也得把setBehindContentView也就是隐藏的侧滑菜单的View设计出来。

  下面我们先来写1下这个侧滑菜单的布局menu.xml

<?xml version="1.0" encoding="utf⑻"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/menu_frame"> </FrameLayout>

要想使用侧滑菜单,要先得到侧滑菜单,下面我们来分析1下使用侧滑菜单要那些步骤,要做哪些事情。

1、得到侧滑菜单

SlidingMenu sm = getSlidingMenu();

2、设置侧滑菜单是从左侧出来还是从右侧出来

sm.setMode(SlidingMenu.LEFT);

3、设置滑动菜单出来以后,内容页 , 显示的剩余宽度

sm.setBehindWidthRes(R.dimen.slidingmenu_offset);

4、设置滑动菜单的阴影, 设置阴影,阴影需要开始的时候,特别暗,渐渐的变淡

sm.setShadowDrawble(R.drawable.shadow);

5、设置阴影的宽度

sm.setShadowWidth(R.dimen.shadow_width);

6、设置滑动菜单的范围

//第1个参数SlidingMenu.TOUCHMODE_FULLSCREEN    可以全屏滑动

//第2个参数SlidingMenu.TOUCHMODE_MARGIN    只能在边沿滑动

//3个参数SlidingMenu.TOUCHMODE_NONE    不能滑动

sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);


(3) 经过上面1系列的方法调用,我们就把滑动菜单集成进来了。现在我们要做的就是初始化滑动菜单里面的数据。建立1个包放fragment。

        我们建立1个MenuFragment类来继承Fragment 。然后我们重写里面的3个方法,分别是onActivityCreated(); onCreate(); onCreateView();

然后我们建立菜单内容视图,也就是1个ListView。

接着,在onCreateView();方法里面使用LayoutInflater把list_view.xml加载进来,

view = LayoutInflater.from(getActivity()).inflate(R.id.list_view,null);

return view;  //注意:Fragment的上下文是通过getActivity()来获得的


注意: 学习Fragment首先要深入了解Fragment的生命周期。(可查阅官方文档)

Fragment其实不能独立存在,它是依附于Activity,然后呢,也就是说它的生命周期的方法跟Activity很像,Fragment先走的是onCreate()方法,然后再走onCreateView();方法,然后再走onActivityCreated();

接着上面,我们在onActivityCreated()把ListView的数据通过Adapter加载进来,如果数据不多,简单,可以斟酌直接用系统的Adapter,我们可以定义1个ArrayAdapter<String>就好了,然后给该Adapter中传1个List<String>。

最后,我们想用这个Fragment,那末我们就在MainActivity里面new1个Fragment,然后我们可以通过getSupportFragmentManager()开启1个事务,然后去替换。有3个参数,第1个是我要替换的ID,第2个是我要替换的Fragment,第3个就是给它1个绑定的值。

通过1系列的操作,我们的SlideMenu+Fragment就完成了。











生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生