Permalink
Please sign in to comment.
Showing
with
529 additions
and 35 deletions.
- +176 −0 LICENSE
- +176 −0 library/LICENSE
- +2 −0 library/src/main/java/com/roughike/swipeselector/SwipeAdapter.java
- +2 −0 library/src/main/java/com/roughike/swipeselector/SwipeSelector.java
- +2 −5 library/src/main/res/layout/swipeselector_content_item.xml
- +5 −5 library/src/main/res/layout/swipeselector_layout.xml
- +1 −1 library/src/test/java/com/iroughapps/swipeselector/ExampleUnitTest.java
- +90 −10 sample/src/main/java/com/example/swipeselector/MainActivity.java
- +75 −14 sample/src/main/res/layout/activity_main.xml
- BIN screenshot.png
176
LICENSE
@@ -0,0 +1,176 @@ | ||
+ Apache License | ||
+ Version 2.0, January 2004 | ||
+ http://www.apache.org/licenses/ | ||
+ | ||
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION | ||
+ | ||
+ 1. Definitions. | ||
+ | ||
+ "License" shall mean the terms and conditions for use, reproduction, | ||
+ and distribution as defined by Sections 1 through 9 of this document. | ||
+ | ||
+ "Licensor" shall mean the copyright owner or entity authorized by | ||
+ the copyright owner that is granting the License. | ||
+ | ||
+ "Legal Entity" shall mean the union of the acting entity and all | ||
+ other entities that control, are controlled by, or are under common | ||
+ control with that entity. For the purposes of this definition, | ||
+ "control" means (i) the power, direct or indirect, to cause the | ||
+ direction or management of such entity, whether by contract or | ||
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the | ||
+ outstanding shares, or (iii) beneficial ownership of such entity. | ||
+ | ||
+ "You" (or "Your") shall mean an individual or Legal Entity | ||
+ exercising permissions granted by this License. | ||
+ | ||
+ "Source" form shall mean the preferred form for making modifications, | ||
+ including but not limited to software source code, documentation | ||
+ source, and configuration files. | ||
+ | ||
+ "Object" form shall mean any form resulting from mechanical | ||
+ transformation or translation of a Source form, including but | ||
+ not limited to compiled object code, generated documentation, | ||
+ and conversions to other media types. | ||
+ | ||
+ "Work" shall mean the work of authorship, whether in Source or | ||
+ Object form, made available under the License, as indicated by a | ||
+ copyright notice that is included in or attached to the work | ||
+ (an example is provided in the Appendix below). | ||
+ | ||
+ "Derivative Works" shall mean any work, whether in Source or Object | ||
+ form, that is based on (or derived from) the Work and for which the | ||
+ editorial revisions, annotations, elaborations, or other modifications | ||
+ represent, as a whole, an original work of authorship. For the purposes | ||
+ of this License, Derivative Works shall not include works that remain | ||
+ separable from, or merely link (or bind by name) to the interfaces of, | ||
+ the Work and Derivative Works thereof. | ||
+ | ||
+ "Contribution" shall mean any work of authorship, including | ||
+ the original version of the Work and any modifications or additions | ||
+ to that Work or Derivative Works thereof, that is intentionally | ||
+ submitted to Licensor for inclusion in the Work by the copyright owner | ||
+ or by an individual or Legal Entity authorized to submit on behalf of | ||
+ the copyright owner. For the purposes of this definition, "submitted" | ||
+ means any form of electronic, verbal, or written communication sent | ||
+ to the Licensor or its representatives, including but not limited to | ||
+ communication on electronic mailing lists, source code control systems, | ||
+ and issue tracking systems that are managed by, or on behalf of, the | ||
+ Licensor for the purpose of discussing and improving the Work, but | ||
+ excluding communication that is conspicuously marked or otherwise | ||
+ designated in writing by the copyright owner as "Not a Contribution." | ||
+ | ||
+ "Contributor" shall mean Licensor and any individual or Legal Entity | ||
+ on behalf of whom a Contribution has been received by Licensor and | ||
+ subsequently incorporated within the Work. | ||
+ | ||
+ 2. Grant of Copyright License. Subject to the terms and conditions of | ||
+ this License, each Contributor hereby grants to You a perpetual, | ||
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
+ copyright license to reproduce, prepare Derivative Works of, | ||
+ publicly display, publicly perform, sublicense, and distribute the | ||
+ Work and such Derivative Works in Source or Object form. | ||
+ | ||
+ 3. Grant of Patent License. Subject to the terms and conditions of | ||
+ this License, each Contributor hereby grants to You a perpetual, | ||
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
+ (except as stated in this section) patent license to make, have made, | ||
+ use, offer to sell, sell, import, and otherwise transfer the Work, | ||
+ where such license applies only to those patent claims licensable | ||
+ by such Contributor that are necessarily infringed by their | ||
+ Contribution(s) alone or by combination of their Contribution(s) | ||
+ with the Work to which such Contribution(s) was submitted. If You | ||
+ institute patent litigation against any entity (including a | ||
+ cross-claim or counterclaim in a lawsuit) alleging that the Work | ||
+ or a Contribution incorporated within the Work constitutes direct | ||
+ or contributory patent infringement, then any patent licenses | ||
+ granted to You under this License for that Work shall terminate | ||
+ as of the date such litigation is filed. | ||
+ | ||
+ 4. Redistribution. You may reproduce and distribute copies of the | ||
+ Work or Derivative Works thereof in any medium, with or without | ||
+ modifications, and in Source or Object form, provided that You | ||
+ meet the following conditions: | ||
+ | ||
+ (a) You must give any other recipients of the Work or | ||
+ Derivative Works a copy of this License; and | ||
+ | ||
+ (b) You must cause any modified files to carry prominent notices | ||
+ stating that You changed the files; and | ||
+ | ||
+ (c) You must retain, in the Source form of any Derivative Works | ||
+ that You distribute, all copyright, patent, trademark, and | ||
+ attribution notices from the Source form of the Work, | ||
+ excluding those notices that do not pertain to any part of | ||
+ the Derivative Works; and | ||
+ | ||
+ (d) If the Work includes a "NOTICE" text file as part of its | ||
+ distribution, then any Derivative Works that You distribute must | ||
+ include a readable copy of the attribution notices contained | ||
+ within such NOTICE file, excluding those notices that do not | ||
+ pertain to any part of the Derivative Works, in at least one | ||
+ of the following places: within a NOTICE text file distributed | ||
+ as part of the Derivative Works; within the Source form or | ||
+ documentation, if provided along with the Derivative Works; or, | ||
+ within a display generated by the Derivative Works, if and | ||
+ wherever such third-party notices normally appear. The contents | ||
+ of the NOTICE file are for informational purposes only and | ||
+ do not modify the License. You may add Your own attribution | ||
+ notices within Derivative Works that You distribute, alongside | ||
+ or as an addendum to the NOTICE text from the Work, provided | ||
+ that such additional attribution notices cannot be construed | ||
+ as modifying the License. | ||
+ | ||
+ You may add Your own copyright statement to Your modifications and | ||
+ may provide additional or different license terms and conditions | ||
+ for use, reproduction, or distribution of Your modifications, or | ||
+ for any such Derivative Works as a whole, provided Your use, | ||
+ reproduction, and distribution of the Work otherwise complies with | ||
+ the conditions stated in this License. | ||
+ | ||
+ 5. Submission of Contributions. Unless You explicitly state otherwise, | ||
+ any Contribution intentionally submitted for inclusion in the Work | ||
+ by You to the Licensor shall be under the terms and conditions of | ||
+ this License, without any additional terms or conditions. | ||
+ Notwithstanding the above, nothing herein shall supersede or modify | ||
+ the terms of any separate license agreement you may have executed | ||
+ with Licensor regarding such Contributions. | ||
+ | ||
+ 6. Trademarks. This License does not grant permission to use the trade | ||
+ names, trademarks, service marks, or product names of the Licensor, | ||
+ except as required for reasonable and customary use in describing the | ||
+ origin of the Work and reproducing the content of the NOTICE file. | ||
+ | ||
+ 7. Disclaimer of Warranty. Unless required by applicable law or | ||
+ agreed to in writing, Licensor provides the Work (and each | ||
+ Contributor provides its Contributions) on an "AS IS" BASIS, | ||
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | ||
+ implied, including, without limitation, any warranties or conditions | ||
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A | ||
+ PARTICULAR PURPOSE. You are solely responsible for determining the | ||
+ appropriateness of using or redistributing the Work and assume any | ||
+ risks associated with Your exercise of permissions under this License. | ||
+ | ||
+ 8. Limitation of Liability. In no event and under no legal theory, | ||
+ whether in tort (including negligence), contract, or otherwise, | ||
+ unless required by applicable law (such as deliberate and grossly | ||
+ negligent acts) or agreed to in writing, shall any Contributor be | ||
+ liable to You for damages, including any direct, indirect, special, | ||
+ incidental, or consequential damages of any character arising as a | ||
+ result of this License or out of the use or inability to use the | ||
+ Work (including but not limited to damages for loss of goodwill, | ||
+ work stoppage, computer failure or malfunction, or any and all | ||
+ other commercial damages or losses), even if such Contributor | ||
+ has been advised of the possibility of such damages. | ||
+ | ||
+ 9. Accepting Warranty or Additional Liability. While redistributing | ||
+ the Work or Derivative Works thereof, You may choose to offer, | ||
+ and charge a fee for, acceptance of support, warranty, indemnity, | ||
+ or other liability obligations and/or rights consistent with this | ||
+ License. However, in accepting such obligations, You may act only | ||
+ on Your own behalf and on Your sole responsibility, not on behalf | ||
+ of any other Contributor, and only if You agree to indemnify, | ||
+ defend, and hold each Contributor harmless for any liability | ||
+ incurred by, or claims asserted against, such Contributor by reason | ||
+ of your accepting any such warranty or additional liability. | ||
+ | ||
+ END OF TERMS AND CONDITIONS |
176
library/LICENSE
@@ -0,0 +1,176 @@ | ||
+ Apache License | ||
+ Version 2.0, January 2004 | ||
+ http://www.apache.org/licenses/ | ||
+ | ||
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION | ||
+ | ||
+ 1. Definitions. | ||
+ | ||
+ "License" shall mean the terms and conditions for use, reproduction, | ||
+ and distribution as defined by Sections 1 through 9 of this document. | ||
+ | ||
+ "Licensor" shall mean the copyright owner or entity authorized by | ||
+ the copyright owner that is granting the License. | ||
+ | ||
+ "Legal Entity" shall mean the union of the acting entity and all | ||
+ other entities that control, are controlled by, or are under common | ||
+ control with that entity. For the purposes of this definition, | ||
+ "control" means (i) the power, direct or indirect, to cause the | ||
+ direction or management of such entity, whether by contract or | ||
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the | ||
+ outstanding shares, or (iii) beneficial ownership of such entity. | ||
+ | ||
+ "You" (or "Your") shall mean an individual or Legal Entity | ||
+ exercising permissions granted by this License. | ||
+ | ||
+ "Source" form shall mean the preferred form for making modifications, | ||
+ including but not limited to software source code, documentation | ||
+ source, and configuration files. | ||
+ | ||
+ "Object" form shall mean any form resulting from mechanical | ||
+ transformation or translation of a Source form, including but | ||
+ not limited to compiled object code, generated documentation, | ||
+ and conversions to other media types. | ||
+ | ||
+ "Work" shall mean the work of authorship, whether in Source or | ||
+ Object form, made available under the License, as indicated by a | ||
+ copyright notice that is included in or attached to the work | ||
+ (an example is provided in the Appendix below). | ||
+ | ||
+ "Derivative Works" shall mean any work, whether in Source or Object | ||
+ form, that is based on (or derived from) the Work and for which the | ||
+ editorial revisions, annotations, elaborations, or other modifications | ||
+ represent, as a whole, an original work of authorship. For the purposes | ||
+ of this License, Derivative Works shall not include works that remain | ||
+ separable from, or merely link (or bind by name) to the interfaces of, | ||
+ the Work and Derivative Works thereof. | ||
+ | ||
+ "Contribution" shall mean any work of authorship, including | ||
+ the original version of the Work and any modifications or additions | ||
+ to that Work or Derivative Works thereof, that is intentionally | ||
+ submitted to Licensor for inclusion in the Work by the copyright owner | ||
+ or by an individual or Legal Entity authorized to submit on behalf of | ||
+ the copyright owner. For the purposes of this definition, "submitted" | ||
+ means any form of electronic, verbal, or written communication sent | ||
+ to the Licensor or its representatives, including but not limited to | ||
+ communication on electronic mailing lists, source code control systems, | ||
+ and issue tracking systems that are managed by, or on behalf of, the | ||
+ Licensor for the purpose of discussing and improving the Work, but | ||
+ excluding communication that is conspicuously marked or otherwise | ||
+ designated in writing by the copyright owner as "Not a Contribution." | ||
+ | ||
+ "Contributor" shall mean Licensor and any individual or Legal Entity | ||
+ on behalf of whom a Contribution has been received by Licensor and | ||
+ subsequently incorporated within the Work. | ||
+ | ||
+ 2. Grant of Copyright License. Subject to the terms and conditions of | ||
+ this License, each Contributor hereby grants to You a perpetual, | ||
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
+ copyright license to reproduce, prepare Derivative Works of, | ||
+ publicly display, publicly perform, sublicense, and distribute the | ||
+ Work and such Derivative Works in Source or Object form. | ||
+ | ||
+ 3. Grant of Patent License. Subject to the terms and conditions of | ||
+ this License, each Contributor hereby grants to You a perpetual, | ||
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable | ||
+ (except as stated in this section) patent license to make, have made, | ||
+ use, offer to sell, sell, import, and otherwise transfer the Work, | ||
+ where such license applies only to those patent claims licensable | ||
+ by such Contributor that are necessarily infringed by their | ||
+ Contribution(s) alone or by combination of their Contribution(s) | ||
+ with the Work to which such Contribution(s) was submitted. If You | ||
+ institute patent litigation against any entity (including a | ||
+ cross-claim or counterclaim in a lawsuit) alleging that the Work | ||
+ or a Contribution incorporated within the Work constitutes direct | ||
+ or contributory patent infringement, then any patent licenses | ||
+ granted to You under this License for that Work shall terminate | ||
+ as of the date such litigation is filed. | ||
+ | ||
+ 4. Redistribution. You may reproduce and distribute copies of the | ||
+ Work or Derivative Works thereof in any medium, with or without | ||
+ modifications, and in Source or Object form, provided that You | ||
+ meet the following conditions: | ||
+ | ||
+ (a) You must give any other recipients of the Work or | ||
+ Derivative Works a copy of this License; and | ||
+ | ||
+ (b) You must cause any modified files to carry prominent notices | ||
+ stating that You changed the files; and | ||
+ | ||
+ (c) You must retain, in the Source form of any Derivative Works | ||
+ that You distribute, all copyright, patent, trademark, and | ||
+ attribution notices from the Source form of the Work, | ||
+ excluding those notices that do not pertain to any part of | ||
+ the Derivative Works; and | ||
+ | ||
+ (d) If the Work includes a "NOTICE" text file as part of its | ||
+ distribution, then any Derivative Works that You distribute must | ||
+ include a readable copy of the attribution notices contained | ||
+ within such NOTICE file, excluding those notices that do not | ||
+ pertain to any part of the Derivative Works, in at least one | ||
+ of the following places: within a NOTICE text file distributed | ||
+ as part of the Derivative Works; within the Source form or | ||
+ documentation, if provided along with the Derivative Works; or, | ||
+ within a display generated by the Derivative Works, if and | ||
+ wherever such third-party notices normally appear. The contents | ||
+ of the NOTICE file are for informational purposes only and | ||
+ do not modify the License. You may add Your own attribution | ||
+ notices within Derivative Works that You distribute, alongside | ||
+ or as an addendum to the NOTICE text from the Work, provided | ||
+ that such additional attribution notices cannot be construed | ||
+ as modifying the License. | ||
+ | ||
+ You may add Your own copyright statement to Your modifications and | ||
+ may provide additional or different license terms and conditions | ||
+ for use, reproduction, or distribution of Your modifications, or | ||
+ for any such Derivative Works as a whole, provided Your use, | ||
+ reproduction, and distribution of the Work otherwise complies with | ||
+ the conditions stated in this License. | ||
+ | ||
+ 5. Submission of Contributions. Unless You explicitly state otherwise, | ||
+ any Contribution intentionally submitted for inclusion in the Work | ||
+ by You to the Licensor shall be under the terms and conditions of | ||
+ this License, without any additional terms or conditions. | ||
+ Notwithstanding the above, nothing herein shall supersede or modify | ||
+ the terms of any separate license agreement you may have executed | ||
+ with Licensor regarding such Contributions. | ||
+ | ||
+ 6. Trademarks. This License does not grant permission to use the trade | ||
+ names, trademarks, service marks, or product names of the Licensor, | ||
+ except as required for reasonable and customary use in describing the | ||
+ origin of the Work and reproducing the content of the NOTICE file. | ||
+ | ||
+ 7. Disclaimer of Warranty. Unless required by applicable law or | ||
+ agreed to in writing, Licensor provides the Work (and each | ||
+ Contributor provides its Contributions) on an "AS IS" BASIS, | ||
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | ||
+ implied, including, without limitation, any warranties or conditions | ||
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A | ||
+ PARTICULAR PURPOSE. You are solely responsible for determining the | ||
+ appropriateness of using or redistributing the Work and assume any | ||
+ risks associated with Your exercise of permissions under this License. | ||
+ | ||
+ 8. Limitation of Liability. In no event and under no legal theory, | ||
+ whether in tort (including negligence), contract, or otherwise, | ||
+ unless required by applicable law (such as deliberate and grossly | ||
+ negligent acts) or agreed to in writing, shall any Contributor be | ||
+ liable to You for damages, including any direct, indirect, special, | ||
+ incidental, or consequential damages of any character arising as a | ||
+ result of this License or out of the use or inability to use the | ||
+ Work (including but not limited to damages for loss of goodwill, | ||
+ work stoppage, computer failure or malfunction, or any and all | ||
+ other commercial damages or losses), even if such Contributor | ||
+ has been advised of the possibility of such damages. | ||
+ | ||
+ 9. Accepting Warranty or Additional Liability. While redistributing | ||
+ the Work or Derivative Works thereof, You may choose to offer, | ||
+ and charge a fee for, acceptance of support, warranty, indemnity, | ||
+ or other liability obligations and/or rights consistent with this | ||
+ License. However, in accepting such obligations, You may act only | ||
+ on Your own behalf and on Your sole responsibility, not on behalf | ||
+ of any other Contributor, and only if You agree to indemnify, | ||
+ defend, and hold each Contributor harmless for any liability | ||
+ incurred by, or claims asserted against, such Contributor by reason | ||
+ of your accepting any such warranty or additional liability. | ||
+ | ||
+ END OF TERMS AND CONDITIONS |
2
library/src/main/java/com/roughike/swipeselector/SwipeAdapter.java
2
library/src/main/java/com/roughike/swipeselector/SwipeSelector.java
7
library/src/main/res/layout/swipeselector_content_item.xml
10
library/src/main/res/layout/swipeselector_layout.xml
2
library/src/test/java/com/iroughapps/swipeselector/ExampleUnitTest.java
100
sample/src/main/java/com/example/swipeselector/MainActivity.java
@@ -1,26 +1,106 @@ | ||
package com.example.swipeselector; | ||
-import android.support.v7.app.AppCompatActivity; | ||
import android.os.Bundle; | ||
+import android.support.v7.app.AppCompatActivity; | ||
+import android.view.View; | ||
+import android.widget.Toast; | ||
-import com.iroughapps.swipeselector.SwipeItem; | ||
-import com.iroughapps.swipeselector.SwipeSelector; | ||
+import com.roughike.swipeselector.SwipeItem; | ||
+import com.roughike.swipeselector.SwipeSelector; | ||
public class MainActivity extends AppCompatActivity { | ||
+ /** | ||
+ * Size options | ||
+ */ | ||
+ private static final int SIZE_KIDS = 0; | ||
+ private static final int SIZE_NORMAL = 1; | ||
+ private static final int SIZE_LARGE = 2; | ||
+ private static final int SIZE_HUGE = 3; | ||
+ | ||
+ /** | ||
+ * Topping options | ||
+ */ | ||
+ private static final int TOPPINGS_EMILY = 0; | ||
+ private static final int TOPPINGS_BOB = 1; | ||
+ private static final int TOPPINGS_HANS = 2; | ||
+ private static final int TOPPINGS_ANDREI = 3; | ||
+ | ||
+ /** | ||
+ * Delivery options | ||
+ */ | ||
+ private static final int DELIVERY_NONE = 0; | ||
+ private static final int DELIVERY_YES = 1; | ||
@Override | ||
protected void onCreate(Bundle savedInstanceState) { | ||
super.onCreate(savedInstanceState); | ||
setContentView(R.layout.activity_main); | ||
- SwipeSelector sizeSelector = (SwipeSelector) findViewById(R.id.sizeSelector); | ||
- sizeSelector.setFragmentManager(getSupportFragmentManager()); | ||
+ final SwipeSelector sizeSelector = (SwipeSelector) findViewById(R.id.sizeSelector); | ||
sizeSelector.setItems( | ||
- new SwipeItem(-1, R.string.app_name, R.string.app_name), | ||
- new SwipeItem(0, "Kids' size", "For the small appetite. Can be shared by four toddlers."), | ||
- new SwipeItem(1, "Normal", "Our most popular size. Ideal for kids before their growth spurt."), | ||
- new SwipeItem(2, "Large", "This is two times the normal size. Suits well for the hangover after a bachelor party."), | ||
- new SwipeItem(3, "Huge", "Suitable for families. Also perfect for a bigger appetite if your name happens to be Furious Pete.") | ||
+ 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.") | ||
+ ); | ||
+ | ||
+ final SwipeSelector toppingSelector = (SwipeSelector) findViewById(R.id.toppingSelector); | ||
+ toppingSelector.setItems( | ||
+ new SwipeItem(-1, "Select toppings", "Start by swiping left."), | ||
+ new SwipeItem(TOPPINGS_EMILY, "Aunt Emily's", "Strawberries, potatoes and cucumber. Just what Aunt " + | ||
+ "Emily found in her backyard."), | ||
+ new SwipeItem(TOPPINGS_BOB, "Uncle Bob's Special", "Ranch dressing, bacon, kebab and double pepperoni. " + | ||
+ "And also some lettuce, because lettuce is healthy."), | ||
+ new SwipeItem(TOPPINGS_HANS, "Hans' Meat Monster", "Ham, sauerbraten, salami and bratwurst. Hans likes " + | ||
+ "his meat."), | ||
+ new SwipeItem(TOPPINGS_ANDREI, "Andreis' Russian Style", "Whole pickles and sour cream. Prijat" + | ||
+ "novo appetita!") | ||
+ ); | ||
+ | ||
+ final SwipeSelector deliverySelector = (SwipeSelector) findViewById(R.id.deliverySelector); | ||
+ deliverySelector.setItems( | ||
+ new SwipeItem(-1, "Select delivery method", "Start by swiping left."), | ||
+ new SwipeItem(DELIVERY_NONE, "No delivery", "Come to our lovely restaurant and pick up the pizza yourself."), | ||
+ new SwipeItem(DELIVERY_YES, "Delivery", "Our minimum-wage delivery boy will bring you the pizza by his own " + | ||
+ "scooter using his own gas money.") | ||
); | ||
+ | ||
+ findViewById(R.id.sendButton).setOnClickListener(new View.OnClickListener() { | ||
+ @Override | ||
+ public void onClick(View v) { | ||
+ SwipeItem selectedSize = sizeSelector.getSelectedItem(); | ||
+ SwipeItem selectedToppings = toppingSelector.getSelectedItem(); | ||
+ SwipeItem selectedDelivery = deliverySelector.getSelectedItem(); | ||
+ | ||
+ // You would probably send these to your server for validation, | ||
+ // like: "http://example.com/api?size=" + selectedSize.value | ||
+ // etc, but we'll just display a toast. | ||
+ | ||
+ String toastMessage = ""; | ||
+ | ||
+ if (selectedSize.value != -1) { | ||
+ toastMessage += "Size: " + selectedSize.title; | ||
+ } else { | ||
+ toastMessage += "No size selected."; | ||
+ } | ||
+ | ||
+ if (selectedToppings.value != -1) { | ||
+ toastMessage += "\nToppings: " + selectedToppings.title; | ||
+ } else { | ||
+ toastMessage += "\nNo toppings selected."; | ||
+ } | ||
+ | ||
+ if (selectedDelivery.value != -1) { | ||
+ toastMessage += "\nDelivery: " + selectedDelivery.title; | ||
+ } else { | ||
+ toastMessage += "\nNo delivery method selected."; | ||
+ } | ||
+ | ||
+ Toast.makeText(getApplicationContext(), toastMessage, Toast.LENGTH_LONG).show(); | ||
+ } | ||
+ }); | ||
} | ||
} |
89
sample/src/main/res/layout/activity_main.xml
@@ -1,21 +1,82 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" | ||
xmlns:tools="http://schemas.android.com/tools" | ||
android:layout_width="match_parent" | ||
- android:layout_height="match_parent" | ||
- android:orientation="vertical" | ||
- tools:context="com.example.swipeselector.MainActivity"> | ||
+ android:layout_height="match_parent"> | ||
- <TextView | ||
- android:layout_width="wrap_content" | ||
+ <LinearLayout | ||
+ android:layout_width="match_parent" | ||
android:layout_height="wrap_content" | ||
- android:textAppearance="@style/TextAppearance.AppCompat.Body1" | ||
- android:layout_margin="16dp" | ||
- android:text="Mamma mia! Now you can order Papa Luigi's delicious pizza's also by mobile. Choose a size, toppings and delivery method and you're good to go!"/> | ||
+ android:orientation="vertical" | ||
+ tools:context="com.example.swipeselector.MainActivity"> | ||
- <com.iroughapps.swipeselector.SwipeSelector | ||
- android:id="@+id/sizeSelector" | ||
- android:layout_width="match_parent" | ||
- android:layout_height="wrap_content" /> | ||
+ <TextView | ||
+ android:layout_width="wrap_content" | ||
+ android:layout_height="wrap_content" | ||
+ android:layout_marginLeft="16dp" | ||
+ android:layout_marginRight="16dp" | ||
+ android:layout_marginTop="16dp" | ||
+ android:text="Example Pizza" | ||
+ android:textAppearance="@style/TextAppearance.AppCompat.Title" /> | ||
+ | ||
+ <TextView | ||
+ android:layout_width="wrap_content" | ||
+ android:layout_height="wrap_content" | ||
+ android:layout_marginLeft="16dp" | ||
+ android:layout_marginRight="16dp" | ||
+ android:layout_marginBottom="16dp" | ||
+ android:text="Mamma mia! Now you can order Example Pizzas delicious pizzas also by mobile.\n\nChoose a size, toppings and delivery method and you're good to go!" | ||
+ android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> | ||
+ | ||
+ <View | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="1dp" | ||
+ android:layout_margin="16dp" | ||
+ android:background="#DDDDDD" /> | ||
+ | ||
+ <com.roughike.swipeselector.SwipeSelector | ||
+ android:id="@+id/sizeSelector" | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="wrap_content" /> | ||
+ | ||
+ <View | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="1dp" | ||
+ android:layout_margin="16dp" | ||
+ android:background="#DDDDDD" /> | ||
+ | ||
+ <com.roughike.swipeselector.SwipeSelector | ||
+ android:id="@+id/toppingSelector" | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="wrap_content" /> | ||
+ | ||
+ <View | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="1dp" | ||
+ android:layout_margin="16dp" | ||
+ android:background="#DDDDDD" /> | ||
+ | ||
+ <com.roughike.swipeselector.SwipeSelector | ||
+ android:id="@+id/deliverySelector" | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="wrap_content" /> | ||
+ | ||
+ <View | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="1dp" | ||
+ android:layout_margin="16dp" | ||
+ android:background="#DDDDDD" /> | ||
+ | ||
+ <Button | ||
+ style="?attr/buttonStyle" | ||
+ android:id="@+id/sendButton" | ||
+ android:layout_width="match_parent" | ||
+ android:layout_height="wrap_content" | ||
+ android:layout_margin="16dp" | ||
+ android:background="@color/colorAccent" | ||
+ android:textColor="#FFFFFF" | ||
+ android:text="I'm hungry, make me some pizza!"/> | ||
+ | ||
+ </LinearLayout> | ||
-</LinearLayout> | ||
+</ScrollView> |
0 comments on commit
0d1e98f