ライブラリ:
- https://github.com/commonsguy/cwac-merge
- https://github.com/maurycyw/StaggeredGridView
- https://github.com/chrisbanes/Android-PullToRefresh
MergeAdapter で gridview アダプターを追加したいと考えています。
第1の方法、アダプターを設定した場合:
plv = (PullToRefreshListView) LayoutInflater.from(context).inflate(
R.layout.layout_listview_in_viewpager, container, false);
adapter = new MergeAdapter();
sadapter = new StaggeredAdapter(BaseSampleActivity.this, R.id.imageView1, urls);
adapter.addAdapter(sadapter);
plv.setAdapter(adapter);
次に、リストビューのように機能します。
第 2 の方法、ビューを作成する場合:
plv = (PullToRefreshListView) LayoutInflater.from(context).inflate(
R.layout.layout_listview_in_viewpager, container, false);
adapter = new MergeAdapter();
adapter.addView(buildlabel3(context));
plv.setAdapter(adapter);
public View buildlabel3(Context context) {
// TODO Auto-generated method stub
RelativeLayout v = (RelativeLayout)LayoutInflater.from(context).inflate(R.layout.activity_main, null);
StaggeredGridView gridView = (StaggeredGridView) v.findViewById(R.id.staggeredGridView1);
int margin = getResources().getDimensionPixelSize(R.dimen.margin);
gridView.setItemMargin(margin); // set the GridView margin
gridView.setPadding(margin, 0, margin, 0); // have the margin on the sides as well
StaggeredAdapter sadapter = new StaggeredAdapter(BaseSampleActivity.this, R.id.imageView1, urls);
gridView.setAdapter(sadapter);
sadapter.notifyDataSetChanged();
Log.e("view", v.toString());
return v;
}
その後、何も表示されず、エラーも発生しません。