Если вы хотите, чтобы точки отображались на вашем ViewPager, я предлагаю вам использовать этот код. Он даст вам идеальные точки по вашему выбору.
Сначала создайте линейный макет для точек и установите его ориентацию по горизонтали.
Затем в файле Java объявите массив textview
TextView[] setDots;
Теперь добавьте следующий фрагмент кода.
private void addDots(int position){
setDots = new TextView[3]; // No. of dots. Here you'll get three dots.
dots.removeAllViews();
for (int i = 0; i<setDots.length; i++){
setDots[i] = new TextView(this);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
setDots[i].setText(HtmlCompat.fromHtml("•", HtmlCompat.FROM_HTML_MODE_LEGACY));
}
setDots[i].setTextSize(35); //Dots size.
dots.addView(setDots[i]);
}
if (setDots.length > 0){
setDots[position].setTextColor(getResources().getColor(R.color.colorPrimaryDark, getTheme())); //Change the color as your need.
}
}
Затем внутри ViewPager.OnPageChangedListener добавьте точки.
@Override
public void onPageSelected(int position) {
addDots(position);
}