Skip to content

Commit

Permalink
Adds current position (#11)
Browse files Browse the repository at this point in the history
Also fixed ghost progress bar in file pager
  • Loading branch information
Roman Truba committed Mar 21, 2013
1 parent dba64da commit b9bdf3a
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 14 deletions.
11 changes: 11 additions & 0 deletions example/src/ru/truba/touchgallery/GalleryFileActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,10 @@

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;
import ru.truba.touchgallery.GalleryWidget.FilePagerAdapter;
import ru.truba.touchgallery.GalleryWidget.GalleryViewPager;
import ru.truba.touchgallery.GalleryWidget.BasePagerAdapter.OnItemChangeListener;

import java.io.File;
import java.io.FileOutputStream;
Expand Down Expand Up @@ -56,6 +58,15 @@ public void onCreate(Bundle savedInstanceState) {
}

FilePagerAdapter pagerAdapter = new FilePagerAdapter(this, items);
pagerAdapter.setOnItemChangeListener(new OnItemChangeListener()
{
@Override
public void onItemChange(int currentPosition)
{
Toast.makeText(GalleryFileActivity.this, "Current item is " + currentPosition, Toast.LENGTH_SHORT).show();
}
});

mViewPager = (GalleryViewPager)findViewById(R.id.viewer);
mViewPager.setOffscreenPageLimit(3);
mViewPager.setAdapter(pagerAdapter);
Expand Down
12 changes: 12 additions & 0 deletions example/src/ru/truba/touchgallery/GalleryUrlActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;
import ru.truba.touchgallery.GalleryWidget.BasePagerAdapter.OnItemChangeListener;
import ru.truba.touchgallery.GalleryWidget.GalleryViewPager;
import ru.truba.touchgallery.GalleryWidget.UrlPagerAdapter;

Expand All @@ -44,9 +46,19 @@ public void onCreate(Bundle savedInstanceState) {
Collections.addAll(items, urls);

UrlPagerAdapter pagerAdapter = new UrlPagerAdapter(this, items);
pagerAdapter.setOnItemChangeListener(new OnItemChangeListener()
{
@Override
public void onItemChange(int currentPosition)
{
Toast.makeText(GalleryUrlActivity.this, "Current item is " + currentPosition, Toast.LENGTH_SHORT).show();
}
});

mViewPager = (GalleryViewPager)findViewById(R.id.viewer);
mViewPager.setOffscreenPageLimit(3);
mViewPager.setAdapter(pagerAdapter);

}

}
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ public class BasePagerAdapter extends PagerAdapter {

protected final List<String> mResources;
protected final Context mContext;
protected int mCurrentPosition = -1;
protected OnItemChangeListener mOnItemChangeListener;
public BasePagerAdapter()
{
mResources = null;
Expand All @@ -45,8 +47,12 @@ public BasePagerAdapter(Context context, List<String> resources)
@Override
public void setPrimaryItem(ViewGroup container, int position, Object object) {
super.setPrimaryItem(container, position, object);
if (mCurrentPosition == position) return;
GalleryViewPager galleryContainer = ((GalleryViewPager)container);
if (galleryContainer.mCurrentView != null) galleryContainer.mCurrentView.resetScale();

mCurrentPosition = position;
if (mOnItemChangeListener != null) mOnItemChangeListener.onItemChange(mCurrentPosition);
}

@Override
Expand All @@ -55,7 +61,8 @@ public void destroyItem(ViewGroup collection, int position, Object view){
}

@Override
public int getCount(){
public int getCount()
{
return mResources.size();
}

Expand All @@ -78,7 +85,14 @@ public Parcelable saveState(){
}

@Override
public void startUpdate(ViewGroup arg0){
public void startUpdate(ViewGroup arg0) { }

public int getCurrentPosition() { return mCurrentPosition; }

public void setOnItemChangeListener(OnItemChangeListener listener) { mOnItemChangeListener = listener; }

public static interface OnItemChangeListener
{
public void onItemChange(int currentPosition);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -21,30 +21,22 @@
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.util.AttributeSet;
import android.widget.ProgressBar;
import java.io.File;
import java.io.FileInputStream;

import ru.truba.touchgallery.TouchView.InputStreamWrapper.InputStreamProgressListener;

public class FileTouchImageView extends UrlTouchImageView {
protected ProgressBar mProgressBar;
protected TouchImageView mImageView;

protected Context mContext;

public class FileTouchImageView extends UrlTouchImageView
{

public FileTouchImageView(Context ctx)
{
super(ctx);
mContext = ctx;
init();

}
public FileTouchImageView(Context ctx, AttributeSet attrs)
{
super(ctx, attrs);
mContext = ctx;
init();
}

public void setUrl(String imagePath)
Expand Down

0 comments on commit b9bdf3a

Please sign in to comment.