zoukankan      html  css  js  c++  java
  • getSupportFragmentManager要用在FragmentActivity及其子类中

    getSupportFragmentManager要用在FragmentActivity及其子类中!!

    关于安卓抽屉导航!!

     * 自定义侧边栏

          创建一个Fragment:CarlozLibFragment.java,并为其创建一个布局carloz_lib_webview.xml,内部有一个WebView控件,顺便在AndroidManifest.xml中添加Intent访问权限;在CarlozLibFragment中重写onCreateView方法,让WebView访问我的个人网站(http://carloz.duapp.com);

    复制代码
    public class CarlozLibFragment extends Fragment {
        private String TAG = "CARLOZ";
    
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            View root = inflater.inflate(R.layout.carloz_lib_webview, container, false);
            
            WebView wv =(WebView)root.findViewById(R.id.wv);
            Log.d(TAG, "load url: carloz lib");
            wv.loadUrl("http://carloz.duapp.com");
            
            return root;
        }
    }
    复制代码

          将NavigationDrawerFragment.java 中 onCreateView中ListView相关内容删除,用自定义布局 diy_slider_content.xml (目录res/layout)替换;diy_slider_content中定义了一个按钮,用来打开刚刚创建的CarlozLibFragment;

    复制代码
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View root = inflater.inflate(R.layout.diy_slider_content, container, false);
        
        root.findViewById(R.id.btnJump).setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mDrawerLayout != null) {
                    // 隐藏侧边栏
                    mDrawerLayout.closeDrawer(mFragmentContainerView);
                }
                if(mCallbacks != null) {
                    mCallbacks.onGotoCarlozLibClicked();
                }
            }
        });
        
        return root;
    }
    复制代码

          onGotoCarlozLibClicked()这个接口是自定义接口,在 静态接口 NavigationDrawerCallbacks 中新增定义

    复制代码
    public static interface NavigationDrawerCallbacks {
        /**
         * Called when an item in the navigation drawer is selected.
         */
        void onNavigationDrawerItemSelected(int position);
        
        // 通过回调传给主界面
        void onGotoCarlozLibClicked();
    }
    复制代码

        需要在主界面SliderActivity中实现该回调方法, 因为主界面实现了 NavigationDrawerFragment.NavigationDrawerCallbacks 接口

    复制代码
    @Override
    public void onGotoCarlozLibClicked() {
        // 需要实现 NavigationDrawerFragment.java Callback中新增的方法
        // 在容器 container 中添加 fragment CarlozLibFragment
        getSupportFragmentManager().beginTransaction()
                .replace(R.id.container, new CarlozLibFragment())
                .commit();
    }
    复制代码

    运行结果如下:

    这里引用:http://www.cnblogs.com/carlo/p/4726719.html

  • 相关阅读:
    Oracle 11g SQL Fundamentals Training Introduction02
    Chapter 05Reporting Aggregated data Using the Group Functions 01
    Chapter 01Restriicting Data Using The SQL SELECT Statemnt01
    Oracle 11g SQL Fundamentals Training Introduction01
    Chapter 04Using Conversion Functions and Conditional ExpressionsConditional Expressions
    Unix时代的开创者Ken Thompson (zz.is2120.bg57iv3)
    我心目中计算机软件科学最小必读书目 (zz.is2120)
    北京将评估分时分区单双号限行 推进错时上下班 (zz)
    佳能G系列领军相机G1X
    选购单反相机的新建议——心民谈宾得K5(转)
  • 原文地址:https://www.cnblogs.com/zhaocundang/p/5379500.html
Copyright © 2011-2022 走看看