orderedList = new ArrayList<>();
// Initially populated with all of the values in the determined list.
CharSequence[] values = decodeValue(getValue());
for (CharSequence value : values) {
orderedList.add(value);
entryChecked.put(value, true);
}
// This loop sets the default states, and adds to the name list if not
// on the list.
for (CharSequence value : getEntryValues()) {
if (!orderedList.contains(value)) {
orderedList.add(value);
entryChecked.put(value, false);
}
}
return orderedList.toArray(new CharSequence[0]);
}
public int getValueTitleIndex(CharSequence item) {
CharSequence[] entries = getEntries();
for (int i = 0; i < entries.length; i++) {
if (entries[i].equals(item)) {
return i;
}
}
throw new IllegalStateException(item + " not found in value title list");
}
/**
* Joins array of object to single string by separator
*
* Credits to kurellajunior on this post
* http://snippets.dzone.com/posts/show/91
*
* @param iterable any kind of iterable ex.: ["a", "b", "c"]
* @return joined string ex.: "a,b,c"
*/
protected static String join(Iterable> iterable) {
Iterator> oIter;
if (iterable == null || (!(oIter = iterable.iterator()).hasNext()))
return "";
StringBuilder oBuilder = new StringBuilder(String.valueOf(oIter.next()));
while (oIter.hasNext())
oBuilder.append(",").append(oIter.next());
return oBuilder.toString();
}
void persistStringValue(String value) {
persistString(value);
}
}