package com.example.fragmentdemo;
import android.app.Activity;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public classMainActivity extends Activity {privateFragmentManager mFragmentManager;privateFragment1 fragment1;privateFragment2 fragment2;privateButton button1;privateFragmentTransaction fragmentTransaction;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);//新建两个Fragment
fragment1 = newFragment1();
fragment2= newFragment2();
mFragmentManager=getFragmentManager();//Fragment事务
fragmentTransaction =mFragmentManager.beginTransaction();//增加执行的动画效果 动画不能用我们的Tween动画,后面会有代码
fragmentTransaction.setCustomAnimations(R.anim.animation_view, R.anim.animation_view_exit);//加入1个Fragment
fragmentTransaction.add(R.id.myFrameLayout, fragment1);
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
fragmentTransaction.commit();
button1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(newOnClickListener() {
@Overridepublic voidonClick(View v) {
fragmentTransaction=mFragmentManager.beginTransaction();//执行动画,显示fragment2
fragmentTransaction.setCustomAnimations(R.anim.animation_view, R.anim.animation_view_exit);if(fragment2.isAdded()) {
fragmentTransaction.commit();
}else{
fragmentTransaction.add(R.id.myFrameLayout, fragment2);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
}
});
}
@Overridepublicboolean onCreateOptionsMenu(Menu menu) {//Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);return true;
}
@Overrideprotected voidonResume() {
super.onResume();
}
@Overridepublic voidonBackPressed() {
super.onBackPressed();
mFragmentManager.popBackStack();
}
}