关闭

Fragment的切换

61人阅读 评论(0) 收藏 举报
manager = getSupportFragmentManager();
        FragmentTransaction beginTransaction = manager.beginTransaction();

        shouyeFragment = new ShouyeFragment();
        readFragment = new ReadFragment();
        woFragment = new WoFragment();
//        menuFragment = new MenuFragment();
        
        baseFragment = new BaseFragment() ;
            
//            @Override
//            public String getTitle() {
//                // TODO Auto-generated method stub
//                return null;
////            }
        

        beginTransaction.add(R.id.fl_home, shouyeFragment, "shouye");
        beginTransaction.add(R.id.fl_home, readFragment, "read");
        beginTransaction.add(R.id.fl_home, woFragment, "wo");
        beginTransaction.hide(readFragment);
        beginTransaction.hide(woFragment);

        beginTransaction.commit();

    }

    @Override
    public void onClick(View v) {
        FragmentTransaction beginTransaction = manager.beginTransaction();
        int id = v.getId();
        switch (id) {
        case R.id.rb_shouye:

            // beginTransaction.replace(R.id.fl_home, shouyeFragment,
            // "shouyeFragment");
            beginTransaction.show(shouyeFragment);
            beginTransaction.hide(readFragment);
            beginTransaction.hide(woFragment);
            break;
        case R.id.rb_read:
            // beginTransaction
            // .replace(R.id.fl_home, readFragment, "readFragment");
            beginTransaction.show(readFragment);
            beginTransaction.hide(shouyeFragment);
            beginTransaction.hide(woFragment);
            break;
        case R.id.rb_wo:
            // beginTransaction.replace(R.id.fl_home, woFragment, "woFragment");
            beginTransaction.show(woFragment);
            beginTransaction.hide(shouyeFragment);
            beginTransaction.hide(readFragment);
            break;

        default:
            break;
        }
        beginTransaction.commit();
    }






public class ReadFragment extends Fragment implements OnClickListener {
    private View view;
    private TextView tv_read_tuijian;
    private TextView tv_read_dingyue;
    private ViewPager vp_read;
    private Read_Tuijian_Fragment tuijian_Fragment;
    private Read_Dingyue_Fragment dingyue_Fragment;
    private FragmentManager manager;
    private List<Fragment> list;
    private TextView[] tvs;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.read_fragment, container, false);
        // 找控件
        findView();

        tv_read_tuijian.setOnClickListener(this);
        tv_read_dingyue.setOnClickListener(this);
        
        tvs = new TextView[] { tv_read_tuijian, tv_read_dingyue };

        tuijian_Fragment = new Read_Tuijian_Fragment();
        dingyue_Fragment = new Read_Dingyue_Fragment();

        list = new ArrayList<Fragment>();

        list.add(tuijian_Fragment);
        list.add(dingyue_Fragment);

        tv_read_tuijian.setTextColor(Color.WHITE);

        // 为vp_read设置适配器
        vp_read.setAdapter(new FragmentPagerAdapter(this.getChildFragmentManager()) {

            @Override
            public int getCount() {
                return list.size();
            }

            @Override
            public Fragment getItem(int arg0) {
                return list.get(arg0);
            }
        });
        vp_read.setOnPageChangeListener(new OnPageChangeListener() {

            @Override
            public void onPageSelected(int arg0) {
                for (int i = 0; i < tvs.length; i++) {
                    if (i == arg0) {
                        tvs[i].setTextColor(Color.WHITE);
                    } else {
                        tvs[i].setTextColor(Color.GRAY);
                    }
                }
            }

            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub

            }
        });

        return view;
    }

    private void findView() {
        tv_read_tuijian = (TextView) view.findViewById(R.id.tv_read_tuijian);
        tv_read_dingyue = (TextView) view.findViewById(R.id.tv_read_dingyue);
        vp_read = (ViewPager) view.findViewById(R.id.vp_read);
    }

    @Override
    public void onClick(View v) {
        int id = v.getId();
        switch (id) {
        case R.id.tv_read_tuijian:
            vp_read.setCurrentItem(0);
            break;
        case R.id.tv_read_dingyue:
            vp_read.setCurrentItem(1);
            break;

        default:
            break;
        }
    }
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1989次
    • 积分:229
    • 等级:
    • 排名:千里之外
    • 原创:22篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章存档