さまざまなカテゴリの商品を表示するために、Androidマーケットのようなことをしようとしています。私はこのライブラリを使用してその動作を実装しましたが、すべて正常に動作しています。
私が今やりたいのは、カテゴリのページにリストビューを表示し、他の各カテゴリにグリッドビューを表示することです。もちろん、それぞれが異なるデータソースを持っています。
どうすればそれを達成できますか?それはアダプターと関係がありますか?
さまざまなカテゴリの商品を表示するために、Androidマーケットのようなことをしようとしています。私はこのライブラリを使用してその動作を実装しましたが、すべて正常に動作しています。
私が今やりたいのは、カテゴリのページにリストビューを表示し、他の各カテゴリにグリッドビューを表示することです。もちろん、それぞれが異なるデータソースを持っています。
どうすればそれを達成できますか?それはアダプターと関係がありますか?
このサイトで見つけることができる非常に良い例を見つけました
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;
}
FragmentPagerAdapterを拡張し、オーバーライドgetItem
して、ViewPager のインデックス/位置に応じて適切な Fragment オブジェクト (または ListFragment) を返したいと思います。
ViewPager
アクティビティのレイアウト xml には( <android.support.v4.view.ViewPager>
)を含める必要があり、アクティビティでは のメソッドをonCreate
使用して.setAdapter
ViewPager
FragmentPagerAdapter