Breaking

Tuesday, 16 July 2019

Android Image Slider | Android Tutorial | Image Slider

Android Image Slider

Android picture slider slides one whole screen to another screen. Picture slider is made by ViewPager which is given by help library. To execute picture slider, you have to acquire ViewPager class which broadens PagerAdapter.

Example Of Image Slider

Let's see an example of android image slider.

Activity_main.xml

In activity_main.xml file, we have wrapped ViewPager inside RelativeLayout.

Activity_main.xml


<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="com.example.test.imageslider.MainActivity"> 
 
 
    <android.support.v4.view.ViewPager 
        android:id="@+id/viewPage" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" /> 
 
</RelativeLayout>


Activity Class

File :- MainActivity.java


package com.example.test.imageslider; 
 
import android.support.v4.view.ViewPager; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
 
public class MainActivity extends AppCompatActivity { 
 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main); 
 
        ViewPager mViewPager = (ViewPager) findViewById(R.id.viewPage); 
        ImageAdapter adapterView = new ImageAdapter(this); 
        mViewPager.setAdapter(adapterView); 
    } 
}


ImageAdapter Class

Presently make ImageAdapter class which broadens PagerAdapter for android picture slider.

Spot a few pictures in drawable envelope which are to be slid.

ImageAdapter.java


package com.example.android.imageslider; 
 
import android.content.Context; 
import android.support.v4.view.PagerAdapter; 
import android.support.v4.view.ViewPager; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ImageView; 
 
public class ImageAdapter extends PagerAdapter{ 
    Context mContext; 
 
    ImageAdapter(Context context) { 
        this.mContext = context; 
    } 
 
    @Override 
    public boolean isViewFromObject(View view, Object object) { 
        return view == ((ImageView) object); 
    } 
 
    private int[] sliderImageId = new int[]{ 
            R.drawable.image1, R.drawable.image2, R.drawable.image3,R.drawable.image4, R.drawable.image5, 
    }; 
 
    @Override 
    public Object instantiateItem(ViewGroup container, int position) { 
        ImageView imageView = new ImageView(mContext); 
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
        imageView.setImageResource(sliderImageId[position]); 
        ((ViewPager) container).addView(imageView, 0); 
        return imageView; 
    } 
 
    @Override 
    public void destroyItem(ViewGroup container, int position, Object object) { 
        ((ViewPager) container).removeView((ImageView) object); 
    } 
 
    @Override 
    public int getCount() { 
        return sliderImageId.length; 
    } 
}


We need to override following mathods of PageAdapter class.


  • isViewFromObject(View, Object): This technique checks the view whether it is related with key and returned by instantiateItem().

  • instantiateItem(ViewGroup, int): This strategy makes the page position go as a contention.

  • destroyItem(ViewGroup, int, Object): It expels the page from its present position from compartment. In this model we basically expelled item utilizing removeView().

  • getCount(): It restores the quantity of accessible perspectives in ViewPager.



OutPut :-


No comments:

Post a Comment