fragment+viewpager学习二(fragment间的跳转) 更新中

Fragment越来越多的被开发者使用,估计即将成为一种趋势。最近被很多人问关于fragment的跳转问题,再加上本人也研究了很多fragment的用法,看了关于fragment的大部分API,特在此说下本人的菜鸟看法

实现一:简单的从一个fragment中跳转到另一个fragment,按返回键返回上一个fragment

1、实现效果图


项目结构图


MainActivity.java

package com.xwj.fragmenttest1;

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 {

	private FragmentManager fragmentManager;
	private FragmentTransaction fragmentTransaction;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		fragmentManager = getSupportFragmentManager();
		fragmentTransaction = fragmentManager.beginTransaction();

		FragmentTest1 fragmentTest1 = new FragmentTest1();

		fragmentTransaction.replace(R.id.fragment_main, fragmentTest1,
				"fragmentTest1");

		fragmentTransaction.commit();
	}

	@Override
	public void onBackPressed() {
		if (fragmentManager.findFragmentByTag("fragmentTest1") != null
				&& fragmentManager.findFragmentByTag("fragmentTest1")
						.isVisible()) {
			System.out.println("12");
			MainActivity.this.finish();
		} else {
			super.onBackPressed();
		}

	}

}

注:FragmentActivity的FragmentManager是处理Fragment Transaction的而不是处理Fragment

FragmentTransaction默认并不会主动被加入到BackStack中,需要调用addToBackStack(String tag)方法。参数'fragmentTest1'作为本次加入BackStack的Transaction的标志

和addToBackStack相对应的接口方法是popBackStack()和popBackStackImmediate()


FragmentTest1.java

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值