安卓的fragment跳转问题
2017-04-09 22:04
134 查看
最近在做安卓项目,然后就遇到了fragment的问题。之前做项目的代码拿出来看,发现和这一次的做法不太一样,但在编码过程中就出现了一些跳转的问题。之前实现fragment是利用FragmentActivity和PageView实现的,这一次就直接继承Fragment,其实思路还是一样的。实现fragment的方法很多,下面是我这次项目采用的方法:首先在一个Activity中添加几个Fragment,在onCreate()中初始化默认Fragment,同时借助FragmentManager来进行事务提交,最后再添加点击事件。
//添加显示fragment private void addOrShowFragment(FragmentTransaction transaction, Fragment fragment){ if(currentFragment == fragment) return; if (!fragment.isAdded()){ transaction.hide(currentFragment).add(R.id.content_layout,fragment).commit(); }else { transaction.hide(currentFragment).show(fragment).commit(); } currentFragment = fragment; }
//初始化底部tab private void initTab(int id) { switch (id){ case 1: if (homeFragment == null) homeFragment = new homeFragment(); if (!homeFragment.isAdded()) { //提交事务 getSupportFragmentManager().beginTransaction().add(R.id.content_layout, homeFragment).commit(); //记录当前Fragment currentFragment = homeFragment; //设置底部图片文本变化 ivHome.setImageResource(R.drawable.home_orange); } break; } }
//点击事件 public void onClick(View v) { switch (v.getId()){ case R.id.rl_home: clickHomeLayout(); break; }
//点击主页后的事件响应 private void clickHomeLayout(){ if (homeFragment == null) homeFragment = new homeFragment(); addOrShowFragment(getSupportFragmentManager().beginTransaction(),homeFragment); //设置底部图标和字体颜色 ...Q&A1、从一个Fragment如何跳转到一个不包含该Fragment的Activity? 回答: Intent intent = new Intent(getActivity(), BActivity.class); startActivity(intent); 2、那么如何从一个activity跳转到指定的Fragment呢? 回答:只需要再跳转时加上intent.putExtra("main",3);即可返回到包含指定Fragment的Activity。 但是需要再onCreate()中加上以下几句代码: Intent intent = getIntent(); int id = intent.getIntExtra("main",1); if (id == 2) initTab(2); else if (id == 3) initTab(3); else initTab(1); 简单来说,就是为每个Fragment设定一个编号,然后按固定编号返回即可。这样一来,涉及到Fragment跳转的问题就解决了。
相关文章推荐
- 解决fragment嵌套的问题和安卓主线程不能修改UI的问题
- work_weipa_activity与fragment跳转问题
- !!!!!安卓界面总是显示载入进度条的问题,没事别乱用ListFragment
- ViewPager调用setCurrentItem(position)时,跳转Fragment 问题
- 关于fragment跳转activity的回传值问题
- 关于安卓开发页面跳转的小问题
- Fragment跳转问题
- 安卓fragment跳转activity,fragment跳转fragment,activity跳转fragment
- 关于从activity跳转到fragment里面的问题
- 安卓fragment跳转activity,fragment跳转fragment,activity跳转fragment
- web链接跳转安卓app的问题
- 安卓怎样从Fragment跳转到Activity
- 安卓中的fragment与viewPager的使用问题的解决
- 安卓跳转登录后如何记录之前的操作的问题思考
- 安卓欢迎界面和activity之间的跳转问题
- Fragment和Activity跳转的问题
- 关于fragment多界面跳转的问题
- fragment 跳转Activity调用onActivityResult 不刷新的问题
- 安卓中嵌套fragment界面第二次打开应用崩溃问题
- 安卓中view、activity、fragment之间的相互跳转