我的需求是这样的,我app进去主界面就是一个fragment 由startactivity来管理,在程序标题栏有个搜索控件
点击搜索控件,程序需要跳转到另外一个搜索界面去,其实就是一个动态搜素效果,输入一个字的时候,下面的东西能够动态变化,然后你就可以点击listView显示的某行值
然后界面再次回到 fragment里面,或者是跳转到其他的fragment里面,
当时出了一个错误,就是我直接在searchActivity里面执行了fragment跳转,发现这种是错误的,根本无法跳转,
必须先把结果返回到StartActivity里面,由它分发事务才可以的
所以这里就用了startActivityForResult();来做,
在StartActivity里面,先跳转到其他的界面:
case R.id.publish_request:
// 标题栏 发布 按钮的事件触发
startActivityForResult(new Intent(this, SearchActivity.class),SEARCHREQUST);
break;
在onclick里面有这样的事件
然后重载onActivityResult方法:
case SEARCHREQUST:
//如果是搜索返回的状态码 那么就需要跳转到fragment里面去
android.support.v4.app.FragmentManager fragmenManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmenManager.beginTransaction();
Fragment fragment = fragments.get(1);
// ///////////////////////浮动布局
tabPosition = 1;
if (isFloatAttached == false)
createFloatView();
// //////////////////////
transaction.replace(R.id.main_framelayout, fragment);
transaction.commit();
title.setText("论坛");//这里可以设置为板块名称
break;
注意了这里面还可以对fragment的标题重新设置,而值可以从 searchActivity里面返回,只不过我这里没有返回,因为我只需要知道一个值,而那个值我是放在Constants里面的,用的时候从缓存里面取的
所以这里面不涉及到从activity向fragment传值的问题,