sicachester sicachester - 2 months ago 5
Android Question

PageViewer white borders on top and bottom

My image is not adapting the screen completely. Is getting with white borders at the top and bottom
My images have 700x1002.

Please can someone help me get these edges and make the image/container fully fit the screen?

layout.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/linearActions" >

<android.support.v4.view.ViewPager
android:id="@+id/tourImageViewPager"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</android.support.v4.view.ViewPager>
</FrameLayout>

<LinearLayout
android:id="@+id/linearActions"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@color/tour_bg"
android:orientation="horizontal" >

<Button
android:id="@+id/btnIdentify"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:layout_marginBottom="24dp"
android:layout_marginLeft="30dp"
android:background="@color/buttonColorWhite"
android:layout_marginTop="27dp"
android:textSize="16sp"/>

<Button
android:id="@+id/btnGoHome"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:layout_marginBottom="24dp"
android:layout_marginLeft="60dp"
android:layout_marginRight="30dp"
android:layout_marginTop="27dp"
android:background="@color/buttonColorBlue"
android:textSize="16sp"/>
</LinearLayout>

<RelativeLayout
android:id="@+id/relativeCircle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/linearActions"
android:layout_marginBottom="24dp"
android:background="@null" >

<com.viewpagerindicator.CirclePageIndicator
android:id="@+id/tourImageIndicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
app:fillColor="#027CC3"
app:pageColor="#CCCCCC" />
</RelativeLayout>

</RelativeLayout>


MyAdapter:

public class MyAdapter extends PagerAdapter {

Activity activity;
int imageArray[];

public MyAdapter(Activity act, int[] imgArray) {
imageArray = imgArray;
activity = act;
}

public Object instantiateItem(View collection, int position) {
ImageView view = new ImageView(activity);
view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT));
view.setScaleType(ScaleType.FIT_CENTER);
view.setImageResource(imageArray[position]);
((ViewPager) collection).addView(view, 0);
return view;
}

@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView((View) arg2);
}

@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == ((View) arg1);
}

@Override
public int getCount() {
return imageArray.length;
}

@Override
public Parcelable saveState() {
return null;
}
}

Answer

try to change your view.setScaleType(ScaleType.FIT_CENTER); to view.setScaleType(ScaleType.CENTER_CROP);

Comments