diff --git a/sample/sample.iml b/sample/sample.iml index 6d22942..49b32a6 100644 --- a/sample/sample.iml +++ b/sample/sample.iml @@ -66,23 +66,18 @@ - - - - - - + diff --git a/sample/src/main/java/com/example/swipeselector/MainActivity.java b/sample/src/main/java/com/example/swipeselector/MainActivity.java index aa53d05..b4161ee 100644 --- a/sample/src/main/java/com/example/swipeselector/MainActivity.java +++ b/sample/src/main/java/com/example/swipeselector/MainActivity.java @@ -8,6 +8,8 @@ import com.roughike.swipeselector.SwipeItem; import com.roughike.swipeselector.SwipeSelector; +import java.util.List; + public class MainActivity extends AppCompatActivity { /** * Size options @@ -30,6 +32,7 @@ public class MainActivity extends AppCompatActivity { */ private static final int DELIVERY_NONE = 0; private static final int DELIVERY_YES = 1; + private List itemList; @Override protected void onCreate(Bundle savedInstanceState) { @@ -37,15 +40,13 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); final SwipeSelector sizeSelector = (SwipeSelector) findViewById(R.id.sizeSelector); - sizeSelector.setItems( - new SwipeItem(-1, "Select a size", "Start by swiping left."), - new SwipeItem(SIZE_KIDS, "Kids' size", "For the small appetite. Can be shared by four toddlers."), - new SwipeItem(SIZE_NORMAL, "Normal", "Our most popular size. Ideal for kids before their growth spurt."), - new SwipeItem(SIZE_LARGE, "Large", "This is two times the normal size. Suits well for the hangover " + - "after a bachelor party."), - new SwipeItem(SIZE_HUGE, "Huge", "Suitable for families. Also perfect for a bigger appetite if your " + - "name happens to be Furious Pete.") - ); + itemList.add(new SwipeItem(-1, "Select a size", "Start by swiping left.")); + itemList.add(new SwipeItem(SIZE_KIDS, "Kids' size", "For the small appetite. Can be shared by four toddlers.")); + itemList.add(new SwipeItem(SIZE_NORMAL, "Normal", "Our most popular size. Ideal for kids before their growth spurt.")); + itemList.add(new SwipeItem(SIZE_LARGE, "Large", "This is two times the normal size. Suits well for the hangover " + + "after a bachelor party.")); + itemList.add(new SwipeItem(SIZE_HUGE, "Huge", "Suitable for families. Also perfect for a bigger appetite if your " + "name happens to be Furious Pete.")); + sizeSelector.setItems(itemList); final SwipeSelector toppingSelector = (SwipeSelector) findViewById(R.id.toppingSelector); toppingSelector.setItems( diff --git a/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeAdapter.java b/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeAdapter.java index 8640bc2..0ef5ad3 100644 --- a/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeAdapter.java +++ b/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeAdapter.java @@ -16,6 +16,7 @@ import java.util.ArrayList; import java.util.Arrays; +import java.util.List; /* * SwipeSelector library for Android @@ -61,7 +62,7 @@ class SwipeAdapter extends PagerAdapter implements View.OnClickListener, ViewPag private final int mContentRightPadding; private OnSwipeItemSelectedListener mOnItemSelectedListener; - private ArrayList mItems; + private List mItems; private int mCurrentPosition; private SwipeAdapter(ViewPager viewPager, ViewGroup indicatorContainer, int indicatorSize, int indicatorMargin, @@ -268,6 +269,12 @@ protected void setItems(SwipeItem... items) { setActiveIndicator(0); notifyDataSetChanged(); } + protected void setItems(List items) { + mItems = items; + mCurrentPosition = 0; + setActiveIndicator(0); + notifyDataSetChanged(); + } protected SwipeItem getSelectedItem() { return mItems.get(mCurrentPosition); diff --git a/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeSelector.java b/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeSelector.java index c4be656..5cfb537 100644 --- a/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeSelector.java +++ b/swipe-selector/src/main/java/com/roughike/swipeselector/SwipeSelector.java @@ -12,6 +12,8 @@ import android.widget.FrameLayout; import android.widget.ImageView; +import java.util.List; + /* * SwipeSelector library for Android @@ -144,6 +146,16 @@ public void setItems(SwipeItem... swipeItems) { mAdapter.setItems(swipeItems); } + /** + * A method for giving this SwipeSelector something to show. + * + * @param swipeItems an array of {@link SwipeItem} to show + * inside this view. + */ + public void setItems(List swipeItems) { + mAdapter.setItems(swipeItems); + } + /** * @return the selected slides' SwipeItem. */ diff --git a/swipe-selector/swipe-selector.iml b/swipe-selector/swipe-selector.iml index 7e4fbf2..94a4b92 100644 --- a/swipe-selector/swipe-selector.iml +++ b/swipe-selector/swipe-selector.iml @@ -65,7 +65,6 @@ - @@ -81,15 +80,13 @@ - - - + \ No newline at end of file