在将布局绑定到viewPager之后,如何访问“布局”中的视图

时间:2014-11-17 06:06:16

标签: android android-layout android-activity android-viewpager

我在一个典型的情况下,我在viewPager中绑定了6个布局,并将viewPager放在我的活动中。实际上这些是注册过程的6种不同形式。 viewPagerAdapter的代码是这样的:

public class IndiRegFormsAdapter extends PagerAdapter {

public int getCount() {
    return 6;
}

public Object instantiateItem(View collection, int position) {

    LayoutInflater inflater = (LayoutInflater) collection.getContext()
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);




    int resId = 0;
    switch (position) {
    case 0:
        resId = R.layout.indi_reg_view_1;
        break;
    case 1:
        resId = R.layout.indi_reg_view_2;
        break;
    case 2:
        resId = R.layout.indi_reg_view_3;
        break;
    case 3:
        resId = R.layout.indi_reg_view_4;
        break;
    case 4:
        resId = R.layout.indi_reg_view_5;
        break;
    case 5:
        resId = R.layout.indi_reg_view_6;
        break;
    }

    View view = inflater.inflate(resId, null);

    ((ViewPager) collection).addView(view, 0);

    return view;
}

@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
    ((ViewPager) arg0).removeView((View) arg2);

}


@Override
public boolean isViewFromObject(View arg0, Object arg1) {
    return arg0 == ((View) arg1);

}

@Override
public Parcelable saveState() {
    return null;
}
}

和我使用此viewPager的活动代码段如下:

    adapter = new IndiRegFormsAdapter();
    myPager = (ViewPager) findViewById(R.id.indiregforms);
    myPager.setAdapter(adapter);
    myPager.setCurrentItem(0);

项目在viewPager中有界限,所有6个布局..但问题是如何从活动访问所有编辑文本和开关以及这6个布局中的所有控件..我必须使用这些表单保存数据..但遗憾的是不知道如何访问它们..

请帮我这个或建议任何其他东西绑定视图寻呼机中的布局并访问所有布局中的所有控件..

1 个答案:

答案 0 :(得分:1)

转到片段视图寻呼机。然后为每个表单布局创建片段,并处理片段内每个的数据(就像一个活动)。然后使用fragmentviewpagerAdapter,你应该很好。