Skip to content

Commit

Permalink
Merge pull request #8 from akiller/master
Browse files Browse the repository at this point in the history
Adding setAllSelectedDisplayMode() to change how display reacts when all items selected
  • Loading branch information
thomashaertel authored Feb 20, 2017
2 parents df12693 + 4bb4d4a commit f20df36
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion library/src/main/java/com/thomashaertel/widget/MultiSpinner.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,18 @@

public class MultiSpinner extends TextView implements OnMultiChoiceClickListener {

public enum AllSelectedDisplayMode {
UseAllText,
DisplayAllItems
}

private SpinnerAdapter mAdapter;
private boolean[] mOldSelection;
private boolean[] mSelected;
private String mDefaultText;
private String mAllText;
private boolean mAllSelected;
private AllSelectedDisplayMode mAllSelectedDisplayMode;
private MultiSpinnerListener mListener;

public MultiSpinner(Context context) {
Expand Down Expand Up @@ -188,7 +194,7 @@ private void refreshSpinner() {
String spinnerText;

if (!allUnselected) {
if (someUnselected && !(mAllText != null && mAllText.length() > 0)) {
if ((someUnselected && !(mAllText != null && mAllText.length() > 0)) || mAllSelectedDisplayMode == AllSelectedDisplayMode.DisplayAllItems) {
spinnerText = spinnerBuffer.toString();
if (spinnerText.length() > 2)
spinnerText = spinnerText.substring(0, spinnerText.length() - 2);
Expand Down Expand Up @@ -217,4 +223,12 @@ public String getAllText() {
public void setAllText(String allText) {
this.mAllText = allText;
}

public AllSelectedDisplayMode getAllSelectedDisplayMode() {
return mAllSelectedDisplayMode;
}

public void setAllSelectedDisplayMode(AllSelectedDisplayMode allSelectedDisplayMode) {
this.mAllSelectedDisplayMode = allSelectedDisplayMode;
}
}

0 comments on commit f20df36

Please sign in to comment.