Fragment (一)

发布时间:2020-07-25 20:52:04 作者:jdijfijf
来源:网络 阅读:557

MainActivity:

package com.example.fragmentmanage;


import android.app.Activity;

import android.app.FragmentManager;

import android.app.FragmentTransaction;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;


public class MainActivity extends Activity implements OnClickListener {


private Button btn1;

private Button btn2;


private FirstFragment firstFragment;

private SencondFragment sencondFragment;


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

initView();

setDefaultFragment();

}


private void initView() {

btn1 = (Button) findViewById(R.id.btn1);

btn2 = (Button) findViewById(R.id.btn2);

btn1.setOnClickListener(this);

btn2.setOnClickListener(this);

}


private void setDefaultFragment() {

FragmentManager manager = getFragmentManager();

FragmentTransaction transaction = manager.beginTransaction();

firstFragment = new FirstFragment();

transaction.replace(R.id.fragme_layout, firstFragment);

transaction.commit();

}


@Override

public void onClick(View arg0) {

FragmentManager manager = getFragmentManager();

FragmentTransaction transaction = manager.beginTransaction();


switch (arg0.getId()) {

case R.id.btn1:

if (firstFragment == null) {

firstFragment = new FirstFragment();

}

transaction.replace(R.id.fragme_layout, firstFragment);

break;

case R.id.btn2:

if (sencondFragment == null) {

sencondFragment = new SencondFragment();

}

transaction.replace(R.id.fragme_layout, sencondFragment);

break;


default:

break;


}

transaction.commit();

}


}

activity_main:


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".MainActivity" >


    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:orientation="horizontal" >


        <Button

            android:id="@+id/btn1"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:layout_weight="1"

            android:text="btn1" />


        <Button

            android:id="@+id/btn2"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:layout_weight="1"

            android:text="btn2" />

    </LinearLayout>


    <FrameLayout

        android:id="@+id/fragme_layout"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" />


</RelativeLayout>


FirstFragment:


package com.example.fragmentmanage;


import android.app.Fragment;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;


public class FirstFragment extends Fragment {

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

return inflater.inflate(R.layout.fragment_first, null);

}

}

SencondFragment:

package com.example.fragmentmanage;


import android.app.Fragment;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;


public class FirstFragment extends Fragment {

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

return inflater.inflate(R.layout.fragment_first, null);

}

}


推荐阅读:
  1. Fragment使用详解
  2. Fragment使用小技巧

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

private package public

上一篇:你的安卓项目编译要花 10 分钟,如何缩短到 1 分钟?

下一篇:解析Android中Handler机制原理

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》