zoukankan      html  css  js  c++  java
  • UIfragment与fragmentManager

    为什么使用Fragment来管理用户界面?

      使用Fragment可以使得界面更为灵活,而且能够很好地适应不同尺寸的屏幕。建议使用支持库中的类(android.support.v4.app.*)来实现,可以通过升级项目的支持库从而使用到Fragment的最新的API特性

    如何使用Fragment管理用户界面?

      步骤一:在AndroidStudio中添加依赖关系,这是因为要使用支持库就必须在项目中将其列入依赖关系。具体操作略!

      步骤二:创建CrimeActivity去继承FragmentActivity,因为FragmentActivity知道如何去管理Fragment。

      Activity托管Fragment有两种方式:在Activity布局中添加(但是不够灵活),在Activity代码中添加(灵活性高,通常采用这种方式)。

      步骤三:在CrimeActivity的布局文件中为Fragment安排位置,通常采用FrameLayout容器视图。xml文件代码如下:        

    <FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/fragment_container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    />

     

     

      步骤四:新建一个名为fragment_crime的xml文件,添加控件什么的。这就是CrimeFragment的布局文件

      步骤五:新建一个UIfragment类(继承Fragment),这就需要用到Fragment的生命周期相关的内容了。此类是利用onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)来实例化Fragment视图的布局,

          将实例化的View返回给托管Avtivity,也就是CrimeActivity。这个过程将Fragment和Activity建立起了联系。还将Fragment和它的xml布局文件建立起了联系。代码如下:

          

    public View onCreateView(LayoutInflater inflater,  ViewGroup container,  Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.fragment_crime,container,false);
        return v;
    }

    步骤六:必须是在Fragment中关联组件,并添加响应。


    步骤七:FragmentManager负责将fragment的视图添加到Activity的视图结构中去。代码如下:

      
    FragmentManager fm = getSupportFragmentManager();
    Fragment fragment = fm.findFragmentById(R.id.fragment_container);

    if(fragment == null){
    fragment = createFragment();
    fm.beginTransaction().add(R.id.fragment_container,fragment).commit();
    }
  • 相关阅读:
    Windows的安全模型
    pefile解析PE格式
    在Linux下安装PyEmu
    Python的数据类型
    从pcap文件中分析出数据包
    Cuckoo架构
    Linux上调试python程序
    Linux关闭端口
    在Windows上安装部署Cuckoo
    分析由Python编写的大型项目(Volatility和Cuckoo)
  • 原文地址:https://www.cnblogs.com/keqi-Android/p/5846944.html
Copyright © 2011-2022 走看看