【发布时间】:2015-09-09 12:33:51
【问题描述】:
我是 android 的新手。我正在尝试开发一个包含带有 Tabs 的 Viewpager 的应用程序。我的目标是将在第一个片段(即 tab1)中输入的数据传递给第二个片段。我很困惑如何获取数据在 FragmentA 中并在 FragmentB 中显示它,除了我的 viewpager 在 Mainactivity 中。
我的一些代码是
mviewpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// Toast.makeText(getApplicationContext(),""+servloc,Toast.LENGTH_SHORT).show();
}
@Override
public void onPageSelected(int position) {
mviewpager.setCurrentItem(position);
int index = mviewpager.getCurrentItem();
if(position==0) {
Fragmentpageadapter adapter = (Fragmentpageadapter) mviewpager.getAdapter();
CreateInspectionFragmentA ca= (CreateInspectionFragmentA) adapter.getFragment(index);
}
上面的代码是viewpage setonpagechangelistener..
我的页面适配器是
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
CreateInspectionFragmentA createInspectionFragmenta=new CreateInspectionFragmentA();
mPageReferenceMap.put(position, createInspectionFragmenta);
return createInspectionFragmenta;
case 1:
CreateInspectionFragmentB createInspectionFragmentb = new CreateInspectionFragmentB();
// createInspectionFragmentb.deliverData(data1,data2);
mPageReferenceMap.put(position,createInspectionFragmentb);
return createInspectionFragmentb;
case 2:
CreateInspectionFragmentC createInspectionFragmentc = new CreateInspectionFragmentC();
mPageReferenceMap.put(position,createInspectionFragmentc);
return createInspectionFragmentc;
default:
return null;
}
}
我的要求是将我在 FragmentA 中输入的数据传递到 edittext 中,以便在滑动时在 FragmentB 中看到,但在单击按钮时不显示。
可能性: 1.如果有办法在 onpageselected 中获取 FragmentA 的 UI 控件,我可以绑定 EditText 视图并获取数据。 2.使用捆绑。 请帮我解决这个问题。 提前致谢。
【问题讨论】:
-
我在这里回答了类似的问题,stackoverflow.com/questions/32344885/… 如果您需要进一步的帮助,请告诉我们
-
这并没有解决我的问题。但感谢您的帮助。我只需要从 FragmentA 中的 Edittext 获取值,然后将其传递给 Fragment B。你的意思是我写从哪里获取值编辑文本。对不起,我不明白。
-
在
CreateInspectionFragmentAgetData()方法中从EditText返回字符串值,在CreateInspectionFragmentBsetData(String value)方法中传递String值。清楚了吗? -
需要在
onPageSelected()方法中调用getData()和setData()方法
标签: android android-layout android-fragments tabs android-viewpager