Просмотр пейджера в Android с индикатором просмотра пейджера
Я использую этот пример кода и библиотеки. Эта библиотека работает хорошо с проведением пальцем по экрану, но я хочу, чтобы при нажатии на слайд индикатора просмотра пейджера работал на эту позицию.
Замечания:
Этот индикатор просмотра пейджера работает на главной странице телефона Android.
1 ответ
Вы должны установить его на вид вашего ViewPager, как это,
public class ViewPagerAdapter extends PagerAdapter {
Context context;
String[] title;
String[] image;
LayoutInflater inflater;
ArrayList<Categories> arrayList;
Activity activity;
public ViewPagerAdapter(Context context, ArrayList<Categories> arrayList) {
this.context = context;
this.arrayList = arrayList;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return arrayList.size();
}
@Override
public boolean isViewFromObject(View view, Object object) {
// TODO Auto-generated method stub
return view == ((RelativeLayout) object);
}
@Override
public Object instantiateItem(ViewGroup container, final int position) {
// TODO Auto-generated method stub
TextView txtTitle;
ImageView image;
inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = inflater.inflate(R.layout.item, container, false);
itemView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(context, ListViewActivity.class);
Bundle b = new Bundle();
final String id = arrayList.get(position).getId();
b.putString("id", id);
i.putExtras(b);
context.startActivity(i);
}
});
txtTitle = (TextView) itemView.findViewById(R.id.tvName);
image = (ImageView) itemView.findViewById(R.id.imageView1);
txtTitle.setText(arrayList.get(position).getTitle());
((ViewPager) container).addView(itemView);
Ion.with(context).load(arrayList.get(position).getImage()).withBitmap()
.resize(512, 512).centerCrop().intoImageView(image);
return itemView;
}
@Override
public void destroyItem(View container, int position, Object object) {
((ViewPager) container).removeView((View) object);
}
}
попробуйте это... это работает для меня.