0
我無法在Grid View尋呼機中設置當前項目。這裏是我的代碼:Android:在GridViewPager上設置當前項目
public class GridActivity extends Activity {
private GridAdapter GridAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grid);
final Resources res = getResources();
final GridViewPager pager = (GridViewPager) findViewById(R.id.pager);
GridAdapter = new GridAdapter(this, getFragmentManager());
pager.setAdapter(GridAdapter);
pager.setCurrentItem(0, 1);
DotsPageIndicator dotsPageIndicator = (DotsPageIndicator) findViewById(R.id.page_indicator);
dotsPageIndicator.setPager(pager);
};
}
適配器類
public class GridAdapter extends FragmentGridPagerAdapter {
private final Context mContext;
private List <Row> mRows;
public GridAdapter(Context ctx, FragmentManager fm, DataMap dm) {
super(fm);
mContext = ctx;
mRows = new ArrayList <Row>();
Row row = new Row();
int position = 0;
for(DataMap attendee : dm.getDataMapArrayList("array")) {
AFragment af = new AFragment();
dm.putInt("tag", position);
af.setArguments(dm.toBundle());
row.add(af);
position++;
}
mRows.add(row);
}
private Fragment cardFragment(int titleRes, int textRes) {
Resources res = mContext.getResources();
CardFragment fragment =
CardFragment.create(res.getText(titleRes), res.getText(textRes));
// Add some extra bottom margin to leave room for the page indicator
fragment.setCardMarginBottom(
res.getDimensionPixelSize(R.dimen.card_margin_bottom));
return fragment;
}
private class Row {
final List<Fragment> columns = new ArrayList<Fragment>();
public Row(Fragment... fragments) {
for (Fragment f : fragments) {
add(f);
}
}
public void add(Fragment f) {
columns.add(f);
}
Fragment getColumn(int i) {
return columns.get(i);
}
public int getColumnCount() {
return columns.size();
}
}
@Override
public Fragment getFragment(int row, int col) {
Row adapterRow = mRows.get(row);
return adapterRow.getColumn(col);
}
@Override
public int getRowCount() {
return mRows.size();
}
@Override
public int getColumnCount(int rowNum) {
return mRows.get(rowNum).getColumnCount();
}
}
我設置的尋呼機目前的項目,但它不工作,開頭總是在第一頁上。
請附上烏爾適配器類。 – Mahalakshmi