Fragment 动态替换

Fragment使用v4包和app包的区别:https://blog.csdn.net/lingdianalex/article/details/52755580

ps:因为我比较懒写的介绍的不详细,如果你对fragment了解比较少,那你就去看比较详细的文章吧~嘻嘻嘻。。。

我这里用的是v4包下的Fragment (记得继承FragmentActivity

public class MainActivity extends FragmentActivity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ImageView img1 = findViewById(R.id.img1);
        ImageView img2 = findViewById(R.id.img2);
        img1.setOnClickListener(this);
        img2.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        FragmentManager manager = getSupportFragmentManager();//fragment管理器
        //通过管理器开启一个事务
        FragmentTransaction transaction = manager.beginTransaction();
        Fragment fragment=null;
        switch (v.getId()) {
            case R.id.img1:
                fragment = new Fragment1();   //fragment1
                break;
            case R.id.img2:
                fragment = new Fragment2();   //fragment2
                break;
        }
//        transaction.addToBackStack(null);  //按下返回 返回上一个fragment而不是直接退出
        transaction.replace(R.id.fragment,fragment);//替换fragment的方法(一参:主界面布局中的fragment控件id   二参:fragment对象)
        transaction.commit();//提交  不写这个一切都是瞎操作
    }
}
上一篇:图像混合


下一篇:判断图片是否加载完成的六种方式