Я создаю программно некоторые ImageView, чтобы использовать их в качестве точек для пользовательского слайдера изображений, но по некоторым причинам размеры изображений не изменятся на некоторых устройствах.
Вот код, который я использую для генерации этих ImageViews и выравнивания их друг с другом:
private void drawMainImageDots(RelativeLayout layout, int total)
{
int distance = 0;
int step = 25;
for (int i=0; i<total; i++)
{
ImageView imageView = new ImageView(getActivity());
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(20, 20);
if (i==0)
{
lp.setMargins(0,0,0,0);
imageView.setImageResource(R.drawable.dotselected);
}
else
{
lp.setMargins(distance,0,0,0);
imageView.setImageResource(R.drawable.dotunselected);
}
distance = distance + step;
imageView.setLayoutParams(lp);
imageView.getLayoutParams().height = 20;
imageView.getLayoutParams().width = 20;
layout.addView(imageView);
dotsMainImageViewList.add(imageView);
}
}
Код RelativeLayout layout
xml:
<RelativeLayout
android:id="@+id/mainimagegallerydotscon"
android:layout_width="wrap_content"
android:layout_height="20dp"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:layout_marginBottom="5dp"/>
Что-то не так с моим кодом?