2

我正在尝试做一些类似 android 市场的事情来展示不同类别的产品。我已经用这个库实现了这种行为,而且一切都运行良好。

我现在要做的是在类别页面中有一个列表视图,在其他每个类别中都有一个网格视图。当然,他们每个人都有不同的数据来源。

我怎样才能做到这一点?跟适配器有关系吗?

4

2 回答 2

9

我找到了一个很好的例子,你可以在这个网站上找到

https://github.com/astuetz/ViewPagerExtensions

否则希望此代码对您有所帮助。

@Override
public Object instantiateItem(View collection, int position) {
    View v = new View(PatientView.this.getApplicationContext());
    final LayoutInflater inflater = (LayoutInflater) PatientView.this
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    switch (position) {
    case 0:
        v = inflater.inflate(R.layout.patientp1,
                (ViewGroup) null, false);
        ((Button) v.findViewById(R.id.pp1btnbck)).setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                finish();
            }
        });

        break;
    case 1:
        v = inflater.inflate(R.layout.patientp2, null, false
                );
        break;
    default:

        TextView tv = new TextView(PatientView.this.context);
        tv.setText("Page " + position);
        tv.setTextColor(Color.WHITE);
        tv.setTextSize(30);
        v = tv;
        break;
    }
    ((ViewPager) collection).addView(v, 0);

    return v;
}
于 2012-05-04T17:46:35.780 回答
1

我认为您希望根据 ViewPager 中的索引/位置扩展FragmentPagerAdapter、覆盖getItem并返回正确的 Fragment 对象(或 ListFragment)。

在您的 Activity 的布局 xml 中,您应该包含一个ViewPager( <android.support.v4.view.ViewPager>),并在您的 Activity 中onCreate使用 的setAdapter方法ViewPager来分配您的FragmentPagerAdapter.

于 2012-05-04T17:35:17.193 回答