Android-碎片事务的add与hide
Posted 白日梦游
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android-碎片事务的add与hide相关的知识,希望对你有一定的参考价值。
package com.example.thirdweek;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends FragmentActivity {
private Fragment myMusic;
private Fragment downLoad;
private Fragment mine;
private Fragment currentFragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取控件
Button btnMyMusic = (Button) findViewById(R.id.btn_my_music);
Button btnDownLoad = (Button) findViewById(R.id.btn_download);
Button btnMine = (Button) findViewById(R.id.btn_mine);
btnMyMusic.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(myMusic == null){
myMusic = new MyMusic();
}
JumpFragment(myMusic,"music");
}
});
btnDownLoad.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(downLoad == null){
downLoad = new DwonLoad();
}
JumpFragment(downLoad,"downLoad");
}
});
btnMine.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(mine == null){
mine = new Mine();
}
JumpFragment(mine,"mine");
}
});
}
private void JumpFragment(Fragment fragment, String tab) {
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction action = manager.beginTransaction();
if (!fragment.isAdded()) {
action.add(R.id.fm, fragment);
}
if (currentFragment != null) {
action.hide(currentFragment);
}
action.show(fragment);
// 添加到回收栈
action.addToBackStack(tab);
action.commit();
currentFragment = fragment;
}
}
//建造多个数据库需要
db.execSQL("drop if table exists t_user");
以上是关于Android-碎片事务的add与hide的主要内容,如果未能解决你的问题,请参考以下文章
android UI:底部菜单栏的学习与制作——Fragment碎片一