动态替换fragment

// [1]获取手机的宽和高 windommanager
        WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
        int width = wm.getDefaultDisplay().getWidth();
        int height = wm.getDefaultDisplay().getHeight();
        // [2]判断横竖屏

        // [3.1]获取fragment的管理者
        FragmentManager manager = getFragmentManager();
        // [3.2]开启一个事务
        FragmentTransaction transaction = manager.beginTransaction();

        if (height > width) {
            // 说明是竖屏 androind 代表系统定义好的 android.R.id.content理解成是当前手机的窗体
            transaction.replace(android.R.id.content, new Fragment1());

        } else {
            // 横屏
            transaction.replace(android.R.id.content, new Fragment2());
        }

        //[4]一定要记得 提交commit
        transaction.commit();
//定义一个Fragment
public class Fragment1 extends Fragment {

    //当用户第一次画ui的时候调用  要显示Fragment自己的内容  setContentView(R.layout.activity_main);
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        //[1]通过打气筒把一个布局转换成view对象
        View view = inflater.inflate(R.layout.fragment1, null);

        return view;
    }
}
时间: 2024-08-25 12:57:41

动态替换fragment的相关文章

android动态替换Fragment向下传递数据

以前传递数据都是使用Intent进行传递,但是intent是跳转,我们这个是动态替换 所以刚开始也是一脸懵逼,百度也百度不到,就自己慢慢摸索出来了: 话不多说,直接上代码:(主要核心代码加粗) package com.smartgentechnology;import android.content.Intent;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import

深入分析动态管理Fragment

一.Fragment与Activity的关系 要理解动态管理Fragment首先要理解一下Fragment与Activity的关系 Fragment可以理解为将Activity划分为若干个片段,Fragment是Activity的一部分,生命周期是依赖Activity的,是不能单独存在的.这样不难理解所有Fragment的管理(查找.添加.删除.替换)都应该在Fragment所依赖的Activity中进行,也就是Activity才是Fragment交互的场所,不要试图在一个Fragment中去管

关于FragmentManager动态管理Fragment时Fragment生命周期的探究

Fragment是Android中的重要组件,在Android 3.0的时候添加进来. 关于Fragment的生命周期,我相信了解过的开发人员都应该把以下方法脱口而出:onAttach, onCreate, onCreateView, onViewCreated, onActivityCreated, onStart, onResume, onPause, onStop, onDestroyView, onDestroy, onDetach. 当Fragment以静态的方式,即通过在布局文件中以

fragment 事务回滚 ---动态创建fragment

1 import java.util.Date; 2 import java.util.LinkedList; 3 4 import com.qianfeng.gp08_day23_fragment5.fragment.TestFragment; 5 6 import android.os.Bundle; 7 import android.app.Activity; 8 import android.app.Fragment; 9 import android.app.FragmentTrans

利用POI 技术动态替换word模板内容

项目中需要实现一个功能,动态替换给定模板里面的内容,生成word文档提供下载功能. 中间解决了问题有: 1.页眉的文档logo图片解决,刚开始的时候,HWPFDocument 对象无法读取图片对象(已测试) 2.文档的水印也无法读取 3.下载的乱码问题(火狐浏览器) 4.将文档中的阿拉伯数字的金额改为中文繁体显示 具体代码如下: /** * 拍卖结算之后,进行成交确认书的下载操作方法 * * @param id * @param response */ @RequestMapping(value

动态添加Fragment的报错信息

05-29 21:23:28.406: E/AndroidRuntime(23636): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.***.Main}: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent

插件的“动态替换”

设想这样一种场景:我们的服务系统提供一系列的功能服务,而以后会有更多新的功能服务增加进来,也可能出现功能服务需要被更改或移除的情况.对于这样的服务系统,一个常见的基本的要求就是,在添加/移除/更新功能服务的时候不能停止的服务系统的运行.通常,将每一项服务封装成一个插件Dll,可以非常容易地实现“插件热插拔”(关于插件的基础信息,参见这里),但是插件的“热替换”(“动态替换”)却成了一个问题.原因在于,当我们从服务系统中卸载插件Dll的时候,实际上服务系统仍然持有该Dll的底层引用,这时如果你尝试

突破IP限制动态替换代理ip。

需要导入的两个jar包 实现的javabean <span style="font-size:18px;">package com.jx.po; public class ProxyPo { private String id; private String ip; private String port; private String area; public String getId() { return id; } public void setId(String i

Android学习路线(二十三)运用Fragment构建动态UI——Fragment间通讯

先占个位置,下次翻译 :p In order to reuse the Fragment UI components, you should build each as a completely self-contained, modular component that defines its own layout and behavior. Once you have defined these reusable Fragments, you can associate them with