首页TAB页的技术选择与功能实现

  一般的选择是用viewpager,这个有开源库。不过因为要引入开源库,所以有时候显得比较大。

  下面这段代码是用在一个BaseActivity上面的,下面继承的Activity直接使用该方法,就可以完成标签的切换了。碎片管理设置定制动画,然后替换,整个作为一个事务。

public void replace(String stackName, BaseFragment fragment) {
        if (fragment.isAdded()) return;
//        Fragment beforeFragment = getSupportFragmentManager().findFragmentById(R.id.main);
        getSupportFragmentManager().beginTransaction()
            .setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out, android.R.anim.fade_in, android.R.anim.fade_out)
//        .setCustomAnimations(R.anim.right_in, R.anim.left_out, R.anim.left_in, R.anim.right_out)
//            .hide(beforeFragment)
//            .addToBackStack(stackName)
            .replace(R.id.main, fragment, fragment.getClass().getName())
            .commit();
    }

  但是只能作为一小段demo的代码,扩展性很差,特别是从主活动到各个碎片的通信传递,没有引用,不好传递。

posted @ 2016-04-12 10:02  likeshu  阅读(273)  评论(0编辑  收藏  举报