我是靠谱客的博主 安详冬天,最近开发中收集的这篇文章主要介绍Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
最近做项目遇到一个问题,Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面,也就是两个activity之前的转换,在这里就说为AActivity和Bactivity吧,AActivity中有两个fragment,一个是slidingFragment一个是contentFragment,其中contentFragment中的viewpager又有四个页面,view1,view2,view3以及view4,目前需要从BActivity跳转到这个view2,在解决这个问题居然花了整整两天的时间,新手学习Android的开发实在是心累啊..........如果直接在BActivity中写:
Intent intent=new intent(this,AActivity.class);
startActivity(intent);
如果直接这样跳转,只会跳转到AActivity中起始的默认界面,但是目前我们需要的其中一个fragment中的viewpager中的一个页面,在这里需要有参数的传递。因此在BActivity中设置监听的时候,需要携带一个参数,在BActivity中应该这样写:
public void onClick(View view) {
Intent intent=new Intent(BActivity.this,AActivity.class);
intent.putExtra("id",1); //在这里传递参数
BActivity.this.startActivity(intent);
}
上面的代码传递了参数,然后需要在AActivity中来接收参数,进行相应的相应。
protected void onResume() {
int id=getIntent().getIntExtra("id",0);
if(id==1){
ContentFragment fragment=new ContentFragment();
FragmentManager fmanger=getSupportFragmentManager();
FragmentTransaction transaction=fmanger.beginTransaction();
transaction.replace(R.id.fl_content,fragment);
transaction.commit();
Intent i=new Intent();
i.setClass(AActivity.this, ContentFragment.class);
i.putExtra("id", 1);
}
通过上面的代码,现在该fragment为ContentFragment,然后在向ContentFragment传递参数,希望显示的是viewpager中的view2,在contentFragment中获取参数进行相应:
@Override
public void onResume() {
int id=mActivity.getIntent().getIntExtra("id", 0);
System.out.println(id);
if(id==1){
mViewPager.setCurrentItem(1); //view2是viewPager中的第二个view,因此设置setCurrentItem(1)。
}
super.onResume();
}
大功告成了,一些小问题又不会有错误,但是又达不到自己预定的效果,真的是很烦,搞了那么久总算是弄出来了!!!!根据自己的需要设置传递的参数即可!!!
最后
以上就是安详冬天为你收集整理的Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面的全部内容,希望文章能够帮你解决Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复