系统自带的NavigationDrawerFragment

1、自动生成NavigationDrawerFragment,onCreatView代码如下

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        mDrawerListView = (ListView) inflater.inflate(
                R.layout.fragment_navigation_drawer, container, false);

        View headerView = inflater.inflate(R.layout.fragment_navigation_drawer_header, null);

        mDrawerListView.addHeaderView(headerView);
        mDrawerListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                selectItem(position);
            }
        });

        List<DrawerListItem> drawerdata = new ArrayList<DrawerListItem>();

        DrawerListItem item = new DrawerListItem(getResources().getDrawable(R.drawable.title_timer_data)
        ,getResources().getString(R.string.title_timer_data));
        drawerdata.add(item);

         item = new DrawerListItem(getResources().getDrawable(R.drawable.title_history_data)
                ,getResources().getString(R.string.title_history_data));
        drawerdata.add(item);

         item = new DrawerListItem(getResources().getDrawable(R.drawable.title_history_chart)
                ,getResources().getString(R.string.title_history_chart));
        drawerdata.add(item);

        item = new DrawerListItem(getResources().getDrawable(R.drawable.title_alarm_data)
                ,getResources().getString(R.string.title_alarm_data));
        drawerdata.add(item);

        item = new DrawerListItem(getResources().getDrawable(R.drawable.title_setting)
                ,getResources().getString(R.string.title_setting));
        drawerdata.add(item);

        selectItem(mCurrentSelectedPosition);

        DrawerListAdapter adapter = new DrawerListAdapter(this.getActivity(),drawerdata);
        mDrawerListView.setAdapter(adapter);

//        mDrawerListView.setAdapter(new ArrayAdapter<String>(
//                getActionBar().getThemedContext(),
//                android.R.layout.simple_list_item_activated_1,
//                android.R.id.text1,
//                new String[]{
//                        getString(R.string.title_timer_data),
//                        getString(R.string.title_history_data),
//                        getString(R.string.title_history_chart),
//                        getString(R.string.title_alarm_data),
//                        getString(R.string.title_setting),
//                }));

        mDrawerListView.setItemChecked(mCurrentSelectedPosition, true);
        return mDrawerListView;
    }

2、主界面选择标题,调用Fragment

/**
     *获取fragment
     */
    public void onSectionAttached(int number) {
        Fragment fragment = null;

        switch (number) {
            case 1:
                fragment = new TimerDataFragment();
                mTitle = getString(R.string.title_timer_data);
                break;
            case 2:
                mTitle = getString(R.string.title_history_data);
                break;
            case 3:
                mTitle = getString(R.string.title_history_chart);
                break;
            case 4:
                mTitle = getString(R.string.title_alarm_data);
                break;
            case 5:
                mTitle = getString(R.string.title_setting);
                break;
            default:
                break;
        }

        if (fragment != null) {
            //FragmentManager fragmentManager = getSupportFragmentManager();
            FragmentManager fragmentManager = getFragmentManager();
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
            fragmentTransaction.replace(R.id.container, fragment);
            fragmentTransaction.commit();
        }
    }

Android --MainActivity模板的更多相关文章

  1. Android --LoginActivity模板登录

    Android Studio使用自带LoginActivity模板,制作登录界面 登录界面功能: 1.记住表单账户密码,并自动登录 //获得sp实例对象 sp = this.getSharedPref ...

  2. Android --ListView模板

    调整了近一上午的模板 ListView表头 <?xml version="1.0" encoding="utf-8"?> <LinearLay ...

  3. 90、 Android UI模板设计

    第一步:自定义xml属性 新建一个android项目,在values文件夹中新建一个atts.xml的文件,在这个xml文件中声明我们一会在使用自定义控件时候需要指明的属性.atts.xml < ...

  4. Android.mk模板(持续更新中)

    此文列出Android.mk的常用模板(部分内容源于多篇他人博客,这里不具体指出),如有错漏,还请在评论中指出,后期持续更新   #链接第三方动态库,在和部分android源码的编译中验证不过 LOC ...

  5. Android开发模板代码(一)——简单打开图库选择照片

    首先,先贴上样本代码 //检查权限 public void checkPermission() { if (ContextCompat.checkSelfPermission(this, Manife ...

  6. 国庆大礼包:2014年最全的ANDROID GUI模板和线框图免费下载

    距离上次分享GUI模板有很长时间了,这段时间里设计趋势不断变化,谷歌推出了最新的Android L以及全新的界面设计,UI设计师又有得忙了,今天收集了一组实用的GUI模板和线框图,包含最新的Andro ...

  7. Android stadio 模板 liveTemplate不管用

    今天自己弄了模板,发现不生效.后来才知道要在下面设置在哪里应用:如下图: Android satdio 制作自己的todo 有时候,别人都使用todo,使得自己个人的todo不好用了.那么怎么弄?自己 ...

  8. Android.mk模板

    此文列出Android.mk的常用模板(部分内容源于多篇他人博客,这里不具体指出),如有错漏,还请在评论中指出,后期持续更新   #链接第三方动态库,在和部分android源码的编译中验证不过 LOC ...

  9. Android开发实践:Android.mk模板

    关于Android NDK开发的文章已经比较多了,我的博客中也分享了很多NDK开发相关经验和技巧,今天简单写了一个 Android.mk 的示例模板,供初学者参考. 本模板主要给大家示例 Androi ...

随机推荐

  1. 第五次实验报告 java 网络编程

    20145306 第五次 java 实验报告 实验内容 客户端与服务器连接,客户端中输入明文,利用DES算法加密,DES的秘钥用RSA公钥密码中服务器的公钥加密,计算明文的Hash函数值,一起传送给客 ...

  2. java 中文转换成Unicode编码和Unicode编码转换成中文

    转自:一叶飘舟 http://blog.csdn.net/jdsjlzx/article/details/ package lia.meetlucene; import java.io.IOExcep ...

  3. MyBatis+springMVC+easyUI (dataGirl)实现分页

    页面展示效果. 页面代码: <%@ page contentType="text/html;charset=UTF-8" language="java"  ...

  4. python实现查找指定文件

    若不包含子目录的遍历: import glob for filename in glob.glob("/data/testdata/*.jpg"): print filename ...

  5. NEC学习 ---- 布局 -两列, 左侧定宽,右侧自适应

    CSS代码:以下两处代码是NEC中CSS初始化样式和功能性样式.今后的NEC研究中,默认这两处是引用的. /* 这是CSS reset 代码 --- 初始化样式 */ /* reset */ html ...

  6. PHP学习(二)----数组

    数组: 首先说一下对PHP中的理解,建立一个好的理解模型还是很关键的: 1.PHP中的数组实际上可以理解为键值对,key=>value;而对于key的取值,可以是string/integer;v ...

  7. WIN10 ANDROIDSTUDIO1.2 安装完首次启动报错

    环境 ACER NOTEBOOK  WIN10 ANNDROID 1.2 解决方案: 在Android Studio安装目录下的 bin 目录下,找到 idea.properties 文件,在文件最后 ...

  8. Liunx 下使用cmake

    参考 http://blog.chinaunix.net/uid-28458801-id-3501768.html http://www.ibm.com/developerworks/cn/linux ...

  9. 《linux内核设计与实现》读书笔记第五章——系统调用

    第5章 系统调用 操作系统提供接口主要是为了保证系统稳定可靠,避免应用程序恣意妄行. 5.1 与内核通信 系统调用在用户空间进程和硬件设备之间添加了一个中间层. 该层主要作用有三个: 为用户空间提供了 ...

  10. js判断url是否有效

    方法一:(仅适用于ie) function CheckStatus(url) { XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP") ...