zoukankan      html  css  js  c++  java
  • android.app.FragmentManager 与 android.support.v4.app.FragmentManager带来的若干Error

            Fragment是activity的界面中的一部分或一种行为。你能够把多个Fragment们组合到一个activity中来创建一个多面界面而且你能够在多个activity中重用一个Fragment。你能够把Fragment觉得模块化的一段activity,它具有自己的生命周期,接收它自己的事件。并能够在activity执行时被加入或删除。

            一个好的帖子:http://my.oschina.net/u/270164/blog/85347。

            使用Fragment的包为android.app.FragmentManager可是因为其对3.0下版本号不兼容,所以要 引入android.support.v4.app.FragmentManager 两个包对Fragment同样方法的定义有所不同,因此在import时,常常easy混淆导致程序报错。以下就来总结下:

           1、编译无错误,执行时报错:android.view.InflateException: Binary XML file line #7: Error inflating class fragment

    出现了上述错误,原因往往是你在某个.xml文件使用了<fragment>标签,但相应的xx.java文件里import的却是android.support.v4.app.Fragment。android.support.v4.app.Fragment:能够兼容到1.6的版本号,不能使用<fragment>标签,须要在程序中通过add或者replace的方式加入。

           2、编译错误:

    import android.os.Bundle;
    import android.support.v4.app.FragmentActivity;
    import android.support.v4.app.FragmentManager;
    import android.support.v4.app.FragmentTransaction;
    public class MainActivity extends FragmentActivity {
        public static FragmentManager childFm;
        protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
             childFm=getSupportFragmentManager();
            FragmentTransaction ft=childFm.beginTransaction();
            Frag1 f1=new Frag1();
            ft.add(f1,"第一").commit();
        }
    }

    代码如上。在add处提示:The method add(Fragment, String) in thetype FragmentTransaction is not applicable for the arguments (Frag1, String)。

    原因:我的Frag1.java中。import的包是 android.app.Fragment所以报错。

    改成import android.support.v4.app.Fragment;就好了。

    3、此外,在调用Activity时,包为 android.support.v4.app.FragmentActivity的类,都extends的是FragmentActivity而不是Activity。



  • 相关阅读:
    C#实现简单的委托异步调用
    jquery each遍历节点使用
    js操作document文档元素 节点交换交换
    js闭包使用
    .net下各个数据类型所占用的字节
    html file控件选择文件后立即预览 js实现
    叉积运用-判断凸多边形
    高精度算法-大数加法
    Dfs学习经验(纸上运行理解DFS)【两道题】
    a标签点击后更改颜色
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/6722328.html
Copyright © 2011-2022 走看看