• 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();
    }
  • 相关阅读:
    NewWords/13001400
    UIWebView加载Js以及Css文件
    驾校错题集合
    NewWords/15001600
    javascript动态添加、修改、删除对象的属性和方法
    NewWords/12001300
    NewWords/11001200
    NewWords/16001700
    NewWords/14001500
    JS与iOS之间的通信
  • 原文地址:https://www.cnblogs.com/keqi-Android/p/5846944.html
Copyright © 2020-2023  润新知